public abstract class jakarta.servlet.http.HttpServlet extends jakarta.servlet.GenericServlet
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: jakarta.servlet.http.HttpServlet
  super_class: jakarta.servlet.GenericServlet
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8466325577512134784

  private static final java.lang.String METHOD_DELETE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "DELETE"

  private static final java.lang.String METHOD_HEAD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "HEAD"

  private static final java.lang.String METHOD_GET;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "GET"

  private static final java.lang.String METHOD_OPTIONS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "OPTIONS"

  private static final java.lang.String METHOD_POST;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "POST"

  private static final java.lang.String METHOD_PUT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PUT"

  private static final java.lang.String METHOD_TRACE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "TRACE"

  private static final java.lang.String HEADER_IFMODSINCE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "If-Modified-Since"

  private static final java.lang.String HEADER_LASTMOD;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "Last-Modified"

  private static final java.lang.String LSTRING_FILE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "jakarta.servlet.http.LocalStrings"

  private static java.util.ResourceBundle lStrings;
    descriptor: Ljava/util/ResourceBundle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 82
            ldc "jakarta.servlet.http.LocalStrings"
            invokestatic java.util.ResourceBundle.getBundle:(Ljava/lang/String;)Ljava/util/ResourceBundle;
            putstatic jakarta.servlet.http.HttpServlet.lStrings:Ljava/util/ResourceBundle;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jakarta.servlet.http.HttpServlet this
         0: .line 89
            aload 0 /* this */
            invokespecial jakarta.servlet.GenericServlet.<init>:()V
         1: .line 90
            return
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljakarta/servlet/http/HttpServlet;

  protected void doGet(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
        start local 2 // jakarta.servlet.http.HttpServletResponse resp
         0: .line 144
            aload 1 /* req */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getProtocol:()Ljava/lang/String;
            astore 3 /* protocol */
        start local 3 // java.lang.String protocol
         1: .line 145
            getstatic jakarta.servlet.http.HttpServlet.lStrings:Ljava/util/ResourceBundle;
            ldc "http.method_get_not_supported"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* msg */
        start local 4 // java.lang.String msg
         2: .line 146
            aload 2 /* resp */
            aload 0 /* this */
            aload 3 /* protocol */
            invokevirtual jakarta.servlet.http.HttpServlet.getMethodNotSupportedCode:(Ljava/lang/String;)I
            aload 4 /* msg */
            invokeinterface jakarta.servlet.http.HttpServletResponse.sendError:(ILjava/lang/String;)V
         3: .line 147
            return
        end local 4 // java.lang.String msg
        end local 3 // java.lang.String protocol
        end local 2 // jakarta.servlet.http.HttpServletResponse resp
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljakarta/servlet/http/HttpServlet;
            0    4     1       req  Ljakarta/servlet/http/HttpServletRequest;
            0    4     2      resp  Ljakarta/servlet/http/HttpServletResponse;
            1    4     3  protocol  Ljava/lang/String;
            2    4     4       msg  Ljava/lang/String;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      resp  

  protected long getLastModified(jakarta.servlet.http.HttpServletRequest);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;)J
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
         0: .line 164
            ldc -1
            lreturn
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljakarta/servlet/http/HttpServlet;
            0    1     1   req  Ljakarta/servlet/http/HttpServletRequest;
    MethodParameters:
      Name  Flags
      req   

  protected void doHead(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
        start local 2 // jakarta.servlet.http.HttpServletResponse resp
         0: .line 192
            new jakarta.servlet.http.NoBodyResponse
            dup
            aload 2 /* resp */
            invokespecial jakarta.servlet.http.NoBodyResponse.<init>:(Ljakarta/servlet/http/HttpServletResponse;)V
            astore 3 /* response */
        start local 3 // jakarta.servlet.http.NoBodyResponse response
         1: .line 194
            aload 0 /* this */
            aload 1 /* req */
            aload 3 /* response */
            invokevirtual jakarta.servlet.http.HttpServlet.doGet:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
         2: .line 195
            aload 3 /* response */
            invokevirtual jakarta.servlet.http.NoBodyResponse.setContentLength:()V
         3: .line 196
            return
        end local 3 // jakarta.servlet.http.NoBodyResponse response
        end local 2 // jakarta.servlet.http.HttpServletResponse resp
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljakarta/servlet/http/HttpServlet;
            0    4     1       req  Ljakarta/servlet/http/HttpServletRequest;
            0    4     2      resp  Ljakarta/servlet/http/HttpServletResponse;
            1    4     3  response  Ljakarta/servlet/http/NoBodyResponse;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      resp  

  protected void doPost(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
        start local 2 // jakarta.servlet.http.HttpServletResponse resp
         0: .line 245
            aload 1 /* req */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getProtocol:()Ljava/lang/String;
            astore 3 /* protocol */
        start local 3 // java.lang.String protocol
         1: .line 246
            getstatic jakarta.servlet.http.HttpServlet.lStrings:Ljava/util/ResourceBundle;
            ldc "http.method_post_not_supported"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* msg */
        start local 4 // java.lang.String msg
         2: .line 247
            aload 2 /* resp */
            aload 0 /* this */
            aload 3 /* protocol */
            invokevirtual jakarta.servlet.http.HttpServlet.getMethodNotSupportedCode:(Ljava/lang/String;)I
            aload 4 /* msg */
            invokeinterface jakarta.servlet.http.HttpServletResponse.sendError:(ILjava/lang/String;)V
         3: .line 248
            return
        end local 4 // java.lang.String msg
        end local 3 // java.lang.String protocol
        end local 2 // jakarta.servlet.http.HttpServletResponse resp
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljakarta/servlet/http/HttpServlet;
            0    4     1       req  Ljakarta/servlet/http/HttpServletRequest;
            0    4     2      resp  Ljakarta/servlet/http/HttpServletResponse;
            1    4     3  protocol  Ljava/lang/String;
            2    4     4       msg  Ljava/lang/String;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      resp  

  protected void doPut(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
        start local 2 // jakarta.servlet.http.HttpServletResponse resp
         0: .line 279
            aload 1 /* req */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getProtocol:()Ljava/lang/String;
            astore 3 /* protocol */
        start local 3 // java.lang.String protocol
         1: .line 280
            getstatic jakarta.servlet.http.HttpServlet.lStrings:Ljava/util/ResourceBundle;
            ldc "http.method_put_not_supported"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* msg */
        start local 4 // java.lang.String msg
         2: .line 281
            aload 2 /* resp */
            aload 0 /* this */
            aload 3 /* protocol */
            invokevirtual jakarta.servlet.http.HttpServlet.getMethodNotSupportedCode:(Ljava/lang/String;)I
            aload 4 /* msg */
            invokeinterface jakarta.servlet.http.HttpServletResponse.sendError:(ILjava/lang/String;)V
         3: .line 282
            return
        end local 4 // java.lang.String msg
        end local 3 // java.lang.String protocol
        end local 2 // jakarta.servlet.http.HttpServletResponse resp
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljakarta/servlet/http/HttpServlet;
            0    4     1       req  Ljakarta/servlet/http/HttpServletRequest;
            0    4     2      resp  Ljakarta/servlet/http/HttpServletResponse;
            1    4     3  protocol  Ljava/lang/String;
            2    4     4       msg  Ljava/lang/String;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      resp  

  protected void doDelete(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
        start local 2 // jakarta.servlet.http.HttpServletResponse resp
         0: .line 306
            aload 1 /* req */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getProtocol:()Ljava/lang/String;
            astore 3 /* protocol */
        start local 3 // java.lang.String protocol
         1: .line 307
            getstatic jakarta.servlet.http.HttpServlet.lStrings:Ljava/util/ResourceBundle;
            ldc "http.method_delete_not_supported"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* msg */
        start local 4 // java.lang.String msg
         2: .line 308
            aload 2 /* resp */
            aload 0 /* this */
            aload 3 /* protocol */
            invokevirtual jakarta.servlet.http.HttpServlet.getMethodNotSupportedCode:(Ljava/lang/String;)I
            aload 4 /* msg */
            invokeinterface jakarta.servlet.http.HttpServletResponse.sendError:(ILjava/lang/String;)V
         3: .line 309
            return
        end local 4 // java.lang.String msg
        end local 3 // java.lang.String protocol
        end local 2 // jakarta.servlet.http.HttpServletResponse resp
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljakarta/servlet/http/HttpServlet;
            0    4     1       req  Ljakarta/servlet/http/HttpServletRequest;
            0    4     2      resp  Ljakarta/servlet/http/HttpServletResponse;
            1    4     3  protocol  Ljava/lang/String;
            2    4     4       msg  Ljava/lang/String;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      resp  

  private int getMethodNotSupportedCode(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // java.lang.String protocol
         0: .line 312
            aload 1 /* protocol */
            dup
            astore 2
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
            649368564: 1
            649369516: 2
              default: 4
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 2
            ldc "HTTP/0.9"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            goto 4
      StackMap locals:
      StackMap stack:
         2: aload 2
            ldc "HTTP/1.0"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            goto 4
         3: .line 315
      StackMap locals:
      StackMap stack:
            sipush 400
            ireturn
         4: .line 317
      StackMap locals:
      StackMap stack:
            sipush 405
            ireturn
        end local 1 // java.lang.String protocol
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Ljakarta/servlet/http/HttpServlet;
            0    5     1  protocol  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      protocol  

  private java.lang.reflect.Method[] getAllDeclaredMethods(java.lang.Class<? extends jakarta.servlet.http.HttpServlet>);
    descriptor: (Ljava/lang/Class;)[Ljava/lang/reflect/Method;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // java.lang.Class c
         0: .line 323
            aload 1 /* c */
            astore 2 /* clazz */
        start local 2 // java.lang.Class clazz
         1: .line 324
            aconst_null
            astore 3 /* allMethods */
        start local 3 // java.lang.reflect.Method[] allMethods
         2: .line 326
            goto 12
         3: .line 327
      StackMap locals: java.lang.Class java.lang.reflect.Method[]
      StackMap stack:
            aload 2 /* clazz */
            invokevirtual java.lang.Class.getDeclaredMethods:()[Ljava/lang/reflect/Method;
            astore 4 /* thisMethods */
        start local 4 // java.lang.reflect.Method[] thisMethods
         4: .line 328
            aload 3 /* allMethods */
            ifnull 10
            aload 3 /* allMethods */
            arraylength
            ifle 10
         5: .line 329
            aload 3 /* allMethods */
            astore 5 /* subClassMethods */
        start local 5 // java.lang.reflect.Method[] subClassMethods
         6: .line 330
            aload 4 /* thisMethods */
            arraylength
            aload 5 /* subClassMethods */
            arraylength
            iadd
            anewarray java.lang.reflect.Method
            astore 3 /* allMethods */
         7: .line 331
            aload 4 /* thisMethods */
            iconst_0
            aload 3 /* allMethods */
            iconst_0
            aload 4 /* thisMethods */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 332
            aload 5 /* subClassMethods */
            iconst_0
            aload 3 /* allMethods */
            aload 4 /* thisMethods */
            arraylength
            aload 5 /* subClassMethods */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 5 // java.lang.reflect.Method[] subClassMethods
         9: .line 333
            goto 11
        10: .line 334
      StackMap locals: java.lang.reflect.Method[]
      StackMap stack:
            aload 4 /* thisMethods */
            astore 3 /* allMethods */
        11: .line 337
      StackMap locals:
      StackMap stack:
            aload 2 /* clazz */
            invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
            astore 2 /* clazz */
        end local 4 // java.lang.reflect.Method[] thisMethods
        12: .line 326
      StackMap locals:
      StackMap stack:
            aload 2 /* clazz */
            ldc Ljakarta/servlet/http/HttpServlet;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 3
        13: .line 340
            aload 3 /* allMethods */
            ifnull 14
            aload 3 /* allMethods */
            goto 15
      StackMap locals:
      StackMap stack:
        14: iconst_0
            anewarray java.lang.reflect.Method
      StackMap locals:
      StackMap stack: java.lang.reflect.Method[]
        15: areturn
        end local 3 // java.lang.reflect.Method[] allMethods
        end local 2 // java.lang.Class clazz
        end local 1 // java.lang.Class c
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             this  Ljakarta/servlet/http/HttpServlet;
            0   16     1                c  Ljava/lang/Class<+Ljakarta/servlet/http/HttpServlet;>;
            1   16     2            clazz  Ljava/lang/Class<*>;
            2   16     3       allMethods  [Ljava/lang/reflect/Method;
            4   12     4      thisMethods  [Ljava/lang/reflect/Method;
            6    9     5  subClassMethods  [Ljava/lang/reflect/Method;
    Signature: (Ljava/lang/Class<+Ljakarta/servlet/http/HttpServlet;>;)[Ljava/lang/reflect/Method;
    MethodParameters:
      Name  Flags
      c     

  protected void doOptions(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=13, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
        start local 2 // jakarta.servlet.http.HttpServletResponse resp
         0: .line 365
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual jakarta.servlet.http.HttpServlet.getAllDeclaredMethods:(Ljava/lang/Class;)[Ljava/lang/reflect/Method;
            astore 3 /* methods */
        start local 3 // java.lang.reflect.Method[] methods
         1: .line 367
            iconst_0
            istore 4 /* ALLOW_GET */
        start local 4 // boolean ALLOW_GET
         2: .line 368
            iconst_0
            istore 5 /* ALLOW_HEAD */
        start local 5 // boolean ALLOW_HEAD
         3: .line 369
            iconst_0
            istore 6 /* ALLOW_POST */
        start local 6 // boolean ALLOW_POST
         4: .line 370
            iconst_0
            istore 7 /* ALLOW_PUT */
        start local 7 // boolean ALLOW_PUT
         5: .line 371
            iconst_0
            istore 8 /* ALLOW_DELETE */
        start local 8 // boolean ALLOW_DELETE
         6: .line 372
            iconst_1
            istore 9 /* ALLOW_TRACE */
        start local 9 // boolean ALLOW_TRACE
         7: .line 373
            iconst_1
            istore 10 /* ALLOW_OPTIONS */
        start local 10 // boolean ALLOW_OPTIONS
         8: .line 375
            iconst_0
            istore 11 /* i */
        start local 11 // int i
         9: goto 24
        10: .line 376
      StackMap locals: jakarta.servlet.http.HttpServlet jakarta.servlet.http.HttpServletRequest jakarta.servlet.http.HttpServletResponse java.lang.reflect.Method[] int int int int int int int int
      StackMap stack:
            aload 3 /* methods */
            iload 11 /* i */
            aaload
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            astore 12 /* methodName */
        start local 12 // java.lang.String methodName
        11: .line 378
            aload 12 /* methodName */
            ldc "doGet"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        12: .line 379
            iconst_1
            istore 4 /* ALLOW_GET */
        13: .line 380
            iconst_1
            istore 5 /* ALLOW_HEAD */
        14: .line 381
            goto 23
      StackMap locals: java.lang.String
      StackMap stack:
        15: aload 12 /* methodName */
            ldc "doPost"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 382
            iconst_1
            istore 6 /* ALLOW_POST */
        17: .line 383
            goto 23
      StackMap locals:
      StackMap stack:
        18: aload 12 /* methodName */
            ldc "doPut"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
        19: .line 384
            iconst_1
            istore 7 /* ALLOW_PUT */
        20: .line 385
            goto 23
      StackMap locals:
      StackMap stack:
        21: aload 12 /* methodName */
            ldc "doDelete"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        22: .line 386
            iconst_1
            istore 8 /* ALLOW_DELETE */
        end local 12 // java.lang.String methodName
        23: .line 375
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 11 /* i */
            aload 3 /* methods */
            arraylength
            if_icmplt 10
        end local 11 // int i
        25: .line 393
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 11 /* allow */
        start local 11 // java.lang.StringBuilder allow
        26: .line 394
            iload 4 /* ALLOW_GET */
            ifeq 28
        27: .line 395
            aload 11 /* allow */
            ldc "GET"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        28: .line 397
      StackMap locals: jakarta.servlet.http.HttpServlet jakarta.servlet.http.HttpServletRequest jakarta.servlet.http.HttpServletResponse java.lang.reflect.Method[] int int int int int int int java.lang.StringBuilder
      StackMap stack:
            iload 5 /* ALLOW_HEAD */
            ifeq 32
        29: .line 398
            aload 11 /* allow */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 31
        30: .line 399
            aload 11 /* allow */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        31: .line 401
      StackMap locals:
      StackMap stack:
            aload 11 /* allow */
            ldc "HEAD"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        32: .line 403
      StackMap locals:
      StackMap stack:
            iload 6 /* ALLOW_POST */
            ifeq 36
        33: .line 404
            aload 11 /* allow */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 35
        34: .line 405
            aload 11 /* allow */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        35: .line 407
      StackMap locals:
      StackMap stack:
            aload 11 /* allow */
            ldc "POST"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        36: .line 409
      StackMap locals:
      StackMap stack:
            iload 7 /* ALLOW_PUT */
            ifeq 40
        37: .line 410
            aload 11 /* allow */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 39
        38: .line 411
            aload 11 /* allow */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        39: .line 413
      StackMap locals:
      StackMap stack:
            aload 11 /* allow */
            ldc "PUT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        40: .line 415
      StackMap locals:
      StackMap stack:
            iload 8 /* ALLOW_DELETE */
            ifeq 44
        41: .line 416
            aload 11 /* allow */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 43
        42: .line 417
            aload 11 /* allow */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        43: .line 419
      StackMap locals:
      StackMap stack:
            aload 11 /* allow */
            ldc "DELETE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        44: .line 421
      StackMap locals:
      StackMap stack:
            iload 9 /* ALLOW_TRACE */
            ifeq 48
        45: .line 422
            aload 11 /* allow */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 47
        46: .line 423
            aload 11 /* allow */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        47: .line 425
      StackMap locals:
      StackMap stack:
            aload 11 /* allow */
            ldc "TRACE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        48: .line 427
      StackMap locals:
      StackMap stack:
            iload 10 /* ALLOW_OPTIONS */
            ifeq 52
        49: .line 428
            aload 11 /* allow */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 51
        50: .line 429
            aload 11 /* allow */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        51: .line 431
      StackMap locals:
      StackMap stack:
            aload 11 /* allow */
            ldc "OPTIONS"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        52: .line 434
      StackMap locals:
      StackMap stack:
            aload 2 /* resp */
            ldc "Allow"
            aload 11 /* allow */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface jakarta.servlet.http.HttpServletResponse.setHeader:(Ljava/lang/String;Ljava/lang/String;)V
        53: .line 435
            return
        end local 11 // java.lang.StringBuilder allow
        end local 10 // boolean ALLOW_OPTIONS
        end local 9 // boolean ALLOW_TRACE
        end local 8 // boolean ALLOW_DELETE
        end local 7 // boolean ALLOW_PUT
        end local 6 // boolean ALLOW_POST
        end local 5 // boolean ALLOW_HEAD
        end local 4 // boolean ALLOW_GET
        end local 3 // java.lang.reflect.Method[] methods
        end local 2 // jakarta.servlet.http.HttpServletResponse resp
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   54     0           this  Ljakarta/servlet/http/HttpServlet;
            0   54     1            req  Ljakarta/servlet/http/HttpServletRequest;
            0   54     2           resp  Ljakarta/servlet/http/HttpServletResponse;
            1   54     3        methods  [Ljava/lang/reflect/Method;
            2   54     4      ALLOW_GET  Z
            3   54     5     ALLOW_HEAD  Z
            4   54     6     ALLOW_POST  Z
            5   54     7      ALLOW_PUT  Z
            6   54     8   ALLOW_DELETE  Z
            7   54     9    ALLOW_TRACE  Z
            8   54    10  ALLOW_OPTIONS  Z
            9   25    11              i  I
           11   23    12     methodName  Ljava/lang/String;
           26   54    11          allow  Ljava/lang/StringBuilder;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      resp  

  protected void doTrace(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
        start local 2 // jakarta.servlet.http.HttpServletResponse resp
         0: .line 456
            ldc "\r\n"
            astore 4 /* CRLF */
        start local 4 // java.lang.String CRLF
         1: .line 457
            new java.lang.StringBuilder
            dup
            ldc "TRACE "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* req */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getRequestURI:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 458
            aload 1 /* req */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getProtocol:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 457
            astore 5 /* buffer */
        start local 5 // java.lang.StringBuilder buffer
         4: .line 460
            aload 1 /* req */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getHeaderNames:()Ljava/util/Enumeration;
            astore 6 /* reqHeaderEnum */
        start local 6 // java.util.Enumeration reqHeaderEnum
         5: .line 462
            goto 8
         6: .line 463
      StackMap locals: jakarta.servlet.http.HttpServlet jakarta.servlet.http.HttpServletRequest jakarta.servlet.http.HttpServletResponse top java.lang.String java.lang.StringBuilder java.util.Enumeration
      StackMap stack:
            aload 6 /* reqHeaderEnum */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* headerName */
        start local 7 // java.lang.String headerName
         7: .line 464
            aload 5 /* buffer */
            aload 4 /* CRLF */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* headerName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* req */
            aload 7 /* headerName */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getHeader:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 7 // java.lang.String headerName
         8: .line 462
      StackMap locals:
      StackMap stack:
            aload 6 /* reqHeaderEnum */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 6
         9: .line 467
            aload 5 /* buffer */
            aload 4 /* CRLF */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 469
            aload 5 /* buffer */
            invokevirtual java.lang.StringBuilder.length:()I
            istore 3 /* responseLength */
        start local 3 // int responseLength
        11: .line 471
            aload 2 /* resp */
            ldc "message/http"
            invokeinterface jakarta.servlet.http.HttpServletResponse.setContentType:(Ljava/lang/String;)V
        12: .line 472
            aload 2 /* resp */
            iload 3 /* responseLength */
            invokeinterface jakarta.servlet.http.HttpServletResponse.setContentLength:(I)V
        13: .line 473
            aload 2 /* resp */
            invokeinterface jakarta.servlet.http.HttpServletResponse.getOutputStream:()Ljakarta/servlet/ServletOutputStream;
            astore 7 /* out */
        start local 7 // jakarta.servlet.ServletOutputStream out
        14: .line 474
            aload 7 /* out */
            aload 5 /* buffer */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual jakarta.servlet.ServletOutputStream.print:(Ljava/lang/String;)V
        15: .line 475
            return
        end local 7 // jakarta.servlet.ServletOutputStream out
        end local 6 // java.util.Enumeration reqHeaderEnum
        end local 5 // java.lang.StringBuilder buffer
        end local 4 // java.lang.String CRLF
        end local 3 // int responseLength
        end local 2 // jakarta.servlet.http.HttpServletResponse resp
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   16     0            this  Ljakarta/servlet/http/HttpServlet;
            0   16     1             req  Ljakarta/servlet/http/HttpServletRequest;
            0   16     2            resp  Ljakarta/servlet/http/HttpServletResponse;
           11   16     3  responseLength  I
            1   16     4            CRLF  Ljava/lang/String;
            4   16     5          buffer  Ljava/lang/StringBuilder;
            5   16     6   reqHeaderEnum  Ljava/util/Enumeration<Ljava/lang/String;>;
            7    8     7      headerName  Ljava/lang/String;
           14   16     7             out  Ljakarta/servlet/ServletOutputStream;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      resp  

  protected void service(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse);
    descriptor: (Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletRequest req
        start local 2 // jakarta.servlet.http.HttpServletResponse resp
         0: .line 493
            aload 1 /* req */
            invokeinterface jakarta.servlet.http.HttpServletRequest.getMethod:()Ljava/lang/String;
            astore 3 /* method */
        start local 3 // java.lang.String method
         1: .line 495
            aload 3 /* method */
            ldc "GET"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
         2: .line 496
            aload 0 /* this */
            aload 1 /* req */
            invokevirtual jakarta.servlet.http.HttpServlet.getLastModified:(Ljakarta/servlet/http/HttpServletRequest;)J
            lstore 4 /* lastModified */
        start local 4 // long lastModified
         3: .line 497
            lload 4 /* lastModified */
            ldc -1
            lcmp
            ifne 6
         4: .line 500
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* resp */
            invokevirtual jakarta.servlet.http.HttpServlet.doGet:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
         5: .line 501
            goto 38
         6: .line 502
      StackMap locals: java.lang.String long
      StackMap stack:
            aload 1 /* req */
            ldc "If-Modified-Since"
            invokeinterface jakarta.servlet.http.HttpServletRequest.getDateHeader:(Ljava/lang/String;)J
            lstore 6 /* ifModifiedSince */
        start local 6 // long ifModifiedSince
         7: .line 503
            lload 6 /* ifModifiedSince */
            lload 4 /* lastModified */
            lcmp
            ifge 11
         8: .line 507
            aload 0 /* this */
            aload 2 /* resp */
            lload 4 /* lastModified */
            invokevirtual jakarta.servlet.http.HttpServlet.maybeSetLastModified:(Ljakarta/servlet/http/HttpServletResponse;J)V
         9: .line 508
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* resp */
            invokevirtual jakarta.servlet.http.HttpServlet.doGet:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
        10: .line 509
            goto 38
        11: .line 510
      StackMap locals: long
      StackMap stack:
            aload 2 /* resp */
            sipush 304
            invokeinterface jakarta.servlet.http.HttpServletResponse.setStatus:(I)V
        end local 6 // long ifModifiedSince
        end local 4 // long lastModified
        12: .line 514
            goto 38
      StackMap locals:
      StackMap stack:
        13: aload 3 /* method */
            ldc "HEAD"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        14: .line 515
            aload 0 /* this */
            aload 1 /* req */
            invokevirtual jakarta.servlet.http.HttpServlet.getLastModified:(Ljakarta/servlet/http/HttpServletRequest;)J
            lstore 4 /* lastModified */
        start local 4 // long lastModified
        15: .line 516
            aload 0 /* this */
            aload 2 /* resp */
            lload 4 /* lastModified */
            invokevirtual jakarta.servlet.http.HttpServlet.maybeSetLastModified:(Ljakarta/servlet/http/HttpServletResponse;J)V
        16: .line 517
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* resp */
            invokevirtual jakarta.servlet.http.HttpServlet.doHead:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
        end local 4 // long lastModified
        17: .line 519
            goto 38
      StackMap locals:
      StackMap stack:
        18: aload 3 /* method */
            ldc "POST"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
        19: .line 520
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* resp */
            invokevirtual jakarta.servlet.http.HttpServlet.doPost:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
        20: .line 522
            goto 38
      StackMap locals:
      StackMap stack:
        21: aload 3 /* method */
            ldc "PUT"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 24
        22: .line 523
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* resp */
            invokevirtual jakarta.servlet.http.HttpServlet.doPut:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
        23: .line 525
            goto 38
      StackMap locals:
      StackMap stack:
        24: aload 3 /* method */
            ldc "DELETE"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 27
        25: .line 526
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* resp */
            invokevirtual jakarta.servlet.http.HttpServlet.doDelete:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
        26: .line 528
            goto 38
      StackMap locals:
      StackMap stack:
        27: aload 3 /* method */
            ldc "OPTIONS"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 30
        28: .line 529
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* resp */
            invokevirtual jakarta.servlet.http.HttpServlet.doOptions:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
        29: .line 531
            goto 38
      StackMap locals:
      StackMap stack:
        30: aload 3 /* method */
            ldc "TRACE"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 33
        31: .line 532
            aload 0 /* this */
            aload 1 /* req */
            aload 2 /* resp */
            invokevirtual jakarta.servlet.http.HttpServlet.doTrace:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
        32: .line 534
            goto 38
        33: .line 540
      StackMap locals:
      StackMap stack:
            getstatic jakarta.servlet.http.HttpServlet.lStrings:Ljava/util/ResourceBundle;
            ldc "http.method_not_implemented"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* errMsg */
        start local 4 // java.lang.String errMsg
        34: .line 541
            iconst_1
            anewarray java.lang.Object
            astore 5 /* errArgs */
        start local 5 // java.lang.Object[] errArgs
        35: .line 542
            aload 5 /* errArgs */
            iconst_0
            aload 3 /* method */
            aastore
        36: .line 543
            aload 4 /* errMsg */
            aload 5 /* errArgs */
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 4 /* errMsg */
        37: .line 545
            aload 2 /* resp */
            sipush 501
            aload 4 /* errMsg */
            invokeinterface jakarta.servlet.http.HttpServletResponse.sendError:(ILjava/lang/String;)V
        end local 5 // java.lang.Object[] errArgs
        end local 4 // java.lang.String errMsg
        38: .line 547
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String method
        end local 2 // jakarta.servlet.http.HttpServletResponse resp
        end local 1 // jakarta.servlet.http.HttpServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   39     0             this  Ljakarta/servlet/http/HttpServlet;
            0   39     1              req  Ljakarta/servlet/http/HttpServletRequest;
            0   39     2             resp  Ljakarta/servlet/http/HttpServletResponse;
            1   39     3           method  Ljava/lang/String;
            3   12     4     lastModified  J
            7   12     6  ifModifiedSince  J
           15   17     4     lastModified  J
           34   38     4           errMsg  Ljava/lang/String;
           35   38     5          errArgs  [Ljava/lang/Object;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      resp  

  private void maybeSetLastModified(jakarta.servlet.http.HttpServletResponse, long);
    descriptor: (Ljakarta/servlet/http/HttpServletResponse;J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.http.HttpServletResponse resp
        start local 2 // long lastModified
         0: .line 555
            aload 1 /* resp */
            ldc "Last-Modified"
            invokeinterface jakarta.servlet.http.HttpServletResponse.containsHeader:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 556
            return
         2: .line 557
      StackMap locals:
      StackMap stack:
            lload 2 /* lastModified */
            lconst_0
            lcmp
            iflt 4
         3: .line 558
            aload 1 /* resp */
            ldc "Last-Modified"
            lload 2 /* lastModified */
            invokeinterface jakarta.servlet.http.HttpServletResponse.setDateHeader:(Ljava/lang/String;J)V
         4: .line 559
      StackMap locals:
      StackMap stack:
            return
        end local 2 // long lastModified
        end local 1 // jakarta.servlet.http.HttpServletResponse resp
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Ljakarta/servlet/http/HttpServlet;
            0    5     1          resp  Ljakarta/servlet/http/HttpServletResponse;
            0    5     2  lastModified  J
    MethodParameters:
              Name  Flags
      resp          
      lastModified  

  public void service(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse);
    descriptor: (Ljakarta/servlet/ServletRequest;Ljakarta/servlet/ServletResponse;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jakarta.servlet.http.HttpServlet this
        start local 1 // jakarta.servlet.ServletRequest req
        start local 2 // jakarta.servlet.ServletResponse res
         0: .line 580
            aload 1 /* req */
            instanceof jakarta.servlet.http.HttpServletRequest
            ifeq 1
            aload 2 /* res */
            instanceof jakarta.servlet.http.HttpServletResponse
            ifne 2
         1: .line 581
      StackMap locals:
      StackMap stack:
            new jakarta.servlet.ServletException
            dup
            ldc "non-HTTP request or response"
            invokespecial jakarta.servlet.ServletException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 584
      StackMap locals:
      StackMap stack:
            aload 1 /* req */
            checkcast jakarta.servlet.http.HttpServletRequest
            astore 3 /* request */
        start local 3 // jakarta.servlet.http.HttpServletRequest request
         3: .line 585
            aload 2 /* res */
            checkcast jakarta.servlet.http.HttpServletResponse
            astore 4 /* response */
        start local 4 // jakarta.servlet.http.HttpServletResponse response
         4: .line 587
            aload 0 /* this */
            aload 3 /* request */
            aload 4 /* response */
            invokevirtual jakarta.servlet.http.HttpServlet.service:(Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)V
         5: .line 588
            return
        end local 4 // jakarta.servlet.http.HttpServletResponse response
        end local 3 // jakarta.servlet.http.HttpServletRequest request
        end local 2 // jakarta.servlet.ServletResponse res
        end local 1 // jakarta.servlet.ServletRequest req
        end local 0 // jakarta.servlet.http.HttpServlet this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljakarta/servlet/http/HttpServlet;
            0    6     1       req  Ljakarta/servlet/ServletRequest;
            0    6     2       res  Ljakarta/servlet/ServletResponse;
            3    6     3   request  Ljakarta/servlet/http/HttpServletRequest;
            4    6     4  response  Ljakarta/servlet/http/HttpServletResponse;
    Exceptions:
      throws jakarta.servlet.ServletException, java.io.IOException
    MethodParameters:
      Name  Flags
      req   
      res   
}
SourceFile: "HttpServlet.java"