public class io.netty.handler.codec.LengthFieldBasedFrameDecoder extends io.netty.handler.codec.ByteToMessageDecoder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.netty.handler.codec.LengthFieldBasedFrameDecoder
  super_class: io.netty.handler.codec.ByteToMessageDecoder
{
  private final java.nio.ByteOrder byteOrder;
    descriptor: Ljava/nio/ByteOrder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int maxFrameLength;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int lengthFieldOffset;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int lengthFieldLength;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int lengthFieldEndOffset;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int lengthAdjustment;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int initialBytesToStrip;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean failFast;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean discardingTooLongFrame;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private long tooLongFrameLength;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private long bytesToDiscard;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  public void <init>(int, int, int);
    descriptor: (III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // int maxFrameLength
        start local 2 // int lengthFieldOffset
        start local 3 // int lengthFieldLength
         0: .line 213
            aload 0 /* this */
            iload 1 /* maxFrameLength */
            iload 2 /* lengthFieldOffset */
            iload 3 /* lengthFieldLength */
            iconst_0
            iconst_0
            invokespecial io.netty.handler.codec.LengthFieldBasedFrameDecoder.<init>:(IIIII)V
         1: .line 214
            return
        end local 3 // int lengthFieldLength
        end local 2 // int lengthFieldOffset
        end local 1 // int maxFrameLength
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0    2     1     maxFrameLength  I
            0    2     2  lengthFieldOffset  I
            0    2     3  lengthFieldLength  I
    MethodParameters:
                   Name  Flags
      maxFrameLength     
      lengthFieldOffset  
      lengthFieldLength  

  public void <init>(int, int, int, int, int);
    descriptor: (IIIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // int maxFrameLength
        start local 2 // int lengthFieldOffset
        start local 3 // int lengthFieldLength
        start local 4 // int lengthAdjustment
        start local 5 // int initialBytesToStrip
         0: .line 236
            aload 0 /* this */
         1: .line 237
            iload 1 /* maxFrameLength */
         2: .line 238
            iload 2 /* lengthFieldOffset */
            iload 3 /* lengthFieldLength */
            iload 4 /* lengthAdjustment */
         3: .line 239
            iload 5 /* initialBytesToStrip */
            iconst_1
            invokespecial io.netty.handler.codec.LengthFieldBasedFrameDecoder.<init>:(IIIIIZ)V
         4: .line 240
            return
        end local 5 // int initialBytesToStrip
        end local 4 // int lengthAdjustment
        end local 3 // int lengthFieldLength
        end local 2 // int lengthFieldOffset
        end local 1 // int maxFrameLength
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    5     0                 this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0    5     1       maxFrameLength  I
            0    5     2    lengthFieldOffset  I
            0    5     3    lengthFieldLength  I
            0    5     4     lengthAdjustment  I
            0    5     5  initialBytesToStrip  I
    MethodParameters:
                     Name  Flags
      maxFrameLength       
      lengthFieldOffset    
      lengthFieldLength    
      lengthAdjustment     
      initialBytesToStrip  

  public void <init>(int, int, int, int, int, boolean);
    descriptor: (IIIIIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // int maxFrameLength
        start local 2 // int lengthFieldOffset
        start local 3 // int lengthFieldLength
        start local 4 // int lengthAdjustment
        start local 5 // int initialBytesToStrip
        start local 6 // boolean failFast
         0: .line 268
            aload 0 /* this */
         1: .line 269
            getstatic java.nio.ByteOrder.BIG_ENDIAN:Ljava/nio/ByteOrder;
            iload 1 /* maxFrameLength */
            iload 2 /* lengthFieldOffset */
            iload 3 /* lengthFieldLength */
         2: .line 270
            iload 4 /* lengthAdjustment */
            iload 5 /* initialBytesToStrip */
            iload 6 /* failFast */
            invokespecial io.netty.handler.codec.LengthFieldBasedFrameDecoder.<init>:(Ljava/nio/ByteOrder;IIIIIZ)V
         3: .line 271
            return
        end local 6 // boolean failFast
        end local 5 // int initialBytesToStrip
        end local 4 // int lengthAdjustment
        end local 3 // int lengthFieldLength
        end local 2 // int lengthFieldOffset
        end local 1 // int maxFrameLength
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    4     0                 this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0    4     1       maxFrameLength  I
            0    4     2    lengthFieldOffset  I
            0    4     3    lengthFieldLength  I
            0    4     4     lengthAdjustment  I
            0    4     5  initialBytesToStrip  I
            0    4     6             failFast  Z
    MethodParameters:
                     Name  Flags
      maxFrameLength       
      lengthFieldOffset    
      lengthFieldLength    
      lengthAdjustment     
      initialBytesToStrip  
      failFast             

  public void <init>(java.nio.ByteOrder, int, int, int, int, int, boolean);
    descriptor: (Ljava/nio/ByteOrder;IIIIIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=8
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // java.nio.ByteOrder byteOrder
        start local 2 // int maxFrameLength
        start local 3 // int lengthFieldOffset
        start local 4 // int lengthFieldLength
        start local 5 // int lengthAdjustment
        start local 6 // int initialBytesToStrip
        start local 7 // boolean failFast
         0: .line 298
            aload 0 /* this */
            invokespecial io.netty.handler.codec.ByteToMessageDecoder.<init>:()V
         1: .line 301
            aload 1 /* byteOrder */
            ifnonnull 3
         2: .line 302
            new java.lang.NullPointerException
            dup
            ldc "byteOrder"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 305
      StackMap locals: io.netty.handler.codec.LengthFieldBasedFrameDecoder java.nio.ByteOrder int int int int int int
      StackMap stack:
            iload 2 /* maxFrameLength */
            ifgt 9
         4: .line 306
            new java.lang.IllegalArgumentException
            dup
         5: .line 307
            new java.lang.StringBuilder
            dup
            ldc "maxFrameLength must be a positive integer: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 308
            iload 2 /* maxFrameLength */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         7: .line 307
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 306
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 311
      StackMap locals:
      StackMap stack:
            iload 3 /* lengthFieldOffset */
            ifge 15
        10: .line 312
            new java.lang.IllegalArgumentException
            dup
        11: .line 313
            new java.lang.StringBuilder
            dup
            ldc "lengthFieldOffset must be a non-negative integer: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        12: .line 314
            iload 3 /* lengthFieldOffset */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        13: .line 313
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 312
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 317
      StackMap locals:
      StackMap stack:
            iload 6 /* initialBytesToStrip */
            ifge 21
        16: .line 318
            new java.lang.IllegalArgumentException
            dup
        17: .line 319
            new java.lang.StringBuilder
            dup
            ldc "initialBytesToStrip must be a non-negative integer: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        18: .line 320
            iload 6 /* initialBytesToStrip */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        19: .line 319
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        20: .line 318
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 323
      StackMap locals:
      StackMap stack:
            iload 3 /* lengthFieldOffset */
            iload 2 /* maxFrameLength */
            iload 4 /* lengthFieldLength */
            isub
            if_icmple 29
        22: .line 324
            new java.lang.IllegalArgumentException
            dup
        23: .line 325
            new java.lang.StringBuilder
            dup
            ldc "maxFrameLength ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* maxFrameLength */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ") "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        24: .line 326
            ldc "must be equal to or greater than "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        25: .line 327
            ldc "lengthFieldOffset ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* lengthFieldOffset */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ") + "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 328
            ldc "lengthFieldLength ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 4 /* lengthFieldLength */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        27: .line 325
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        28: .line 324
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        29: .line 331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* byteOrder */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.byteOrder:Ljava/nio/ByteOrder;
        30: .line 332
            aload 0 /* this */
            iload 2 /* maxFrameLength */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.maxFrameLength:I
        31: .line 333
            aload 0 /* this */
            iload 3 /* lengthFieldOffset */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldOffset:I
        32: .line 334
            aload 0 /* this */
            iload 4 /* lengthFieldLength */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldLength:I
        33: .line 335
            aload 0 /* this */
            iload 5 /* lengthAdjustment */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthAdjustment:I
        34: .line 336
            aload 0 /* this */
            iload 3 /* lengthFieldOffset */
            iload 4 /* lengthFieldLength */
            iadd
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldEndOffset:I
        35: .line 337
            aload 0 /* this */
            iload 6 /* initialBytesToStrip */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.initialBytesToStrip:I
        36: .line 338
            aload 0 /* this */
            iload 7 /* failFast */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.failFast:Z
        37: .line 339
            return
        end local 7 // boolean failFast
        end local 6 // int initialBytesToStrip
        end local 5 // int lengthAdjustment
        end local 4 // int lengthFieldLength
        end local 3 // int lengthFieldOffset
        end local 2 // int maxFrameLength
        end local 1 // java.nio.ByteOrder byteOrder
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   38     0                 this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0   38     1            byteOrder  Ljava/nio/ByteOrder;
            0   38     2       maxFrameLength  I
            0   38     3    lengthFieldOffset  I
            0   38     4    lengthFieldLength  I
            0   38     5     lengthAdjustment  I
            0   38     6  initialBytesToStrip  I
            0   38     7             failFast  Z
    MethodParameters:
                     Name  Flags
      byteOrder            
      maxFrameLength       
      lengthFieldOffset    
      lengthFieldLength    
      lengthAdjustment     
      initialBytesToStrip  
      failFast             

  protected final void decode(io.netty.channel.ChannelHandlerContext, io.netty.buffer.ByteBuf, java.util.List<java.lang.Object>);
    descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // io.netty.buffer.ByteBuf in
        start local 3 // java.util.List out
         0: .line 343
            aload 0 /* this */
            aload 1 /* ctx */
            aload 2 /* in */
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.decode:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)Ljava/lang/Object;
            astore 4 /* decoded */
        start local 4 // java.lang.Object decoded
         1: .line 344
            aload 4 /* decoded */
            ifnull 3
         2: .line 345
            aload 3 /* out */
            aload 4 /* decoded */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 347
      StackMap locals: java.lang.Object
      StackMap stack:
            return
        end local 4 // java.lang.Object decoded
        end local 3 // java.util.List out
        end local 2 // io.netty.buffer.ByteBuf in
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0    4     1      ctx  Lio/netty/channel/ChannelHandlerContext;
            0    4     2       in  Lio/netty/buffer/ByteBuf;
            0    4     3      out  Ljava/util/List<Ljava/lang/Object;>;
            1    4     4  decoded  Ljava/lang/Object;
    Exceptions:
      throws java.lang.Exception
    Signature: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List<Ljava/lang/Object;>;)V
    MethodParameters:
      Name  Flags
      ctx   
      in    
      out   

  private void discardingTooLongFrame(io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/buffer/ByteBuf;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // io.netty.buffer.ByteBuf in
         0: .line 350
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.bytesToDiscard:J
            lstore 2 /* bytesToDiscard */
        start local 2 // long bytesToDiscard
         1: .line 351
            lload 2 /* bytesToDiscard */
            aload 1 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            i2l
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            istore 4 /* localBytesToDiscard */
        start local 4 // int localBytesToDiscard
         2: .line 352
            aload 1 /* in */
            iload 4 /* localBytesToDiscard */
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
         3: .line 353
            lload 2 /* bytesToDiscard */
            iload 4 /* localBytesToDiscard */
            i2l
            lsub
            lstore 2 /* bytesToDiscard */
         4: .line 354
            aload 0 /* this */
            lload 2 /* bytesToDiscard */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.bytesToDiscard:J
         5: .line 356
            aload 0 /* this */
            iconst_0
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.failIfNecessary:(Z)V
         6: .line 357
            return
        end local 4 // int localBytesToDiscard
        end local 2 // long bytesToDiscard
        end local 1 // io.netty.buffer.ByteBuf in
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    7     0                 this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0    7     1                   in  Lio/netty/buffer/ByteBuf;
            1    7     2       bytesToDiscard  J
            2    7     4  localBytesToDiscard  I
    MethodParameters:
      Name  Flags
      in    

  private static void failOnNegativeLengthField(io.netty.buffer.ByteBuf, long, int);
    descriptor: (Lio/netty/buffer/ByteBuf;JI)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // io.netty.buffer.ByteBuf in
        start local 1 // long frameLength
        start local 3 // int lengthFieldEndOffset
         0: .line 360
            aload 0 /* in */
            iload 3 /* lengthFieldEndOffset */
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
         1: .line 361
            new io.netty.handler.codec.CorruptedFrameException
            dup
         2: .line 362
            new java.lang.StringBuilder
            dup
            ldc "negative pre-adjustment length field: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            lload 1 /* frameLength */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 361
            invokespecial io.netty.handler.codec.CorruptedFrameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // int lengthFieldEndOffset
        end local 1 // long frameLength
        end local 0 // io.netty.buffer.ByteBuf in
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    4     0                    in  Lio/netty/buffer/ByteBuf;
            0    4     1           frameLength  J
            0    4     3  lengthFieldEndOffset  I
    MethodParameters:
                      Name  Flags
      in                    
      frameLength           
      lengthFieldEndOffset  

  private static void failOnFrameLengthLessThanLengthFieldEndOffset(io.netty.buffer.ByteBuf, long, int);
    descriptor: (Lio/netty/buffer/ByteBuf;JI)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // io.netty.buffer.ByteBuf in
        start local 1 // long frameLength
        start local 3 // int lengthFieldEndOffset
         0: .line 368
            aload 0 /* in */
            iload 3 /* lengthFieldEndOffset */
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
         1: .line 369
            new io.netty.handler.codec.CorruptedFrameException
            dup
         2: .line 370
            new java.lang.StringBuilder
            dup
            ldc "Adjusted frame length ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            lload 1 /* frameLength */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc ") is less "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 371
            ldc "than lengthFieldEndOffset: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* lengthFieldEndOffset */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         4: .line 370
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 369
            invokespecial io.netty.handler.codec.CorruptedFrameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // int lengthFieldEndOffset
        end local 1 // long frameLength
        end local 0 // io.netty.buffer.ByteBuf in
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    6     0                    in  Lio/netty/buffer/ByteBuf;
            0    6     1           frameLength  J
            0    6     3  lengthFieldEndOffset  I
    MethodParameters:
                      Name  Flags
      in                    
      frameLength           
      lengthFieldEndOffset  

  private void exceededFrameLength(io.netty.buffer.ByteBuf, long);
    descriptor: (Lio/netty/buffer/ByteBuf;J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // io.netty.buffer.ByteBuf in
        start local 2 // long frameLength
         0: .line 375
            lload 2 /* frameLength */
            aload 1 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            i2l
            lsub
            lstore 4 /* discard */
        start local 4 // long discard
         1: .line 376
            aload 0 /* this */
            lload 2 /* frameLength */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.tooLongFrameLength:J
         2: .line 378
            lload 4 /* discard */
            lconst_0
            lcmp
            ifge 5
         3: .line 380
            aload 1 /* in */
            lload 2 /* frameLength */
            l2i
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
         4: .line 381
            goto 8
         5: .line 383
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.discardingTooLongFrame:Z
         6: .line 384
            aload 0 /* this */
            lload 4 /* discard */
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.bytesToDiscard:J
         7: .line 385
            aload 1 /* in */
            aload 1 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
         8: .line 387
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.failIfNecessary:(Z)V
         9: .line 388
            return
        end local 4 // long discard
        end local 2 // long frameLength
        end local 1 // io.netty.buffer.ByteBuf in
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0   10     1           in  Lio/netty/buffer/ByteBuf;
            0   10     2  frameLength  J
            1   10     4      discard  J
    MethodParameters:
             Name  Flags
      in           
      frameLength  

  private static void failOnFrameLengthLessThanInitialBytesToStrip(io.netty.buffer.ByteBuf, long, int);
    descriptor: (Lio/netty/buffer/ByteBuf;JI)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // io.netty.buffer.ByteBuf in
        start local 1 // long frameLength
        start local 3 // int initialBytesToStrip
         0: .line 393
            aload 0 /* in */
            lload 1 /* frameLength */
            l2i
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
         1: .line 394
            new io.netty.handler.codec.CorruptedFrameException
            dup
         2: .line 395
            new java.lang.StringBuilder
            dup
            ldc "Adjusted frame length ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            lload 1 /* frameLength */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc ") is less "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 396
            ldc "than initialBytesToStrip: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* initialBytesToStrip */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         4: .line 395
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 394
            invokespecial io.netty.handler.codec.CorruptedFrameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // int initialBytesToStrip
        end local 1 // long frameLength
        end local 0 // io.netty.buffer.ByteBuf in
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    6     0                   in  Lio/netty/buffer/ByteBuf;
            0    6     1          frameLength  J
            0    6     3  initialBytesToStrip  I
    MethodParameters:
                     Name  Flags
      in                   
      frameLength          
      initialBytesToStrip  

  protected java.lang.Object decode(io.netty.channel.ChannelHandlerContext, io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // io.netty.buffer.ByteBuf in
         0: .line 408
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.discardingTooLongFrame:Z
            ifeq 2
         1: .line 409
            aload 0 /* this */
            aload 2 /* in */
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.discardingTooLongFrame:(Lio/netty/buffer/ByteBuf;)V
         2: .line 412
      StackMap locals:
      StackMap stack:
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldEndOffset:I
            if_icmpge 4
         3: .line 413
            aconst_null
            areturn
         4: .line 416
      StackMap locals:
      StackMap stack:
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readerIndex:()I
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldOffset:I
            iadd
            istore 3 /* actualLengthFieldOffset */
        start local 3 // int actualLengthFieldOffset
         5: .line 417
            aload 0 /* this */
            aload 2 /* in */
            iload 3 /* actualLengthFieldOffset */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldLength:I
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.byteOrder:Ljava/nio/ByteOrder;
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.getUnadjustedFrameLength:(Lio/netty/buffer/ByteBuf;IILjava/nio/ByteOrder;)J
            lstore 4 /* frameLength */
        start local 4 // long frameLength
         6: .line 419
            lload 4 /* frameLength */
            lconst_0
            lcmp
            ifge 8
         7: .line 420
            aload 2 /* in */
            lload 4 /* frameLength */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldEndOffset:I
            invokestatic io.netty.handler.codec.LengthFieldBasedFrameDecoder.failOnNegativeLengthField:(Lio/netty/buffer/ByteBuf;JI)V
         8: .line 423
      StackMap locals: int long
      StackMap stack:
            lload 4 /* frameLength */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthAdjustment:I
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldEndOffset:I
            iadd
            i2l
            ladd
            lstore 4 /* frameLength */
         9: .line 425
            lload 4 /* frameLength */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldEndOffset:I
            i2l
            lcmp
            ifge 11
        10: .line 426
            aload 2 /* in */
            lload 4 /* frameLength */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldEndOffset:I
            invokestatic io.netty.handler.codec.LengthFieldBasedFrameDecoder.failOnFrameLengthLessThanLengthFieldEndOffset:(Lio/netty/buffer/ByteBuf;JI)V
        11: .line 429
      StackMap locals:
      StackMap stack:
            lload 4 /* frameLength */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.maxFrameLength:I
            i2l
            lcmp
            ifle 14
        12: .line 430
            aload 0 /* this */
            aload 2 /* in */
            lload 4 /* frameLength */
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.exceededFrameLength:(Lio/netty/buffer/ByteBuf;J)V
        13: .line 431
            aconst_null
            areturn
        14: .line 435
      StackMap locals:
      StackMap stack:
            lload 4 /* frameLength */
            l2i
            istore 6 /* frameLengthInt */
        start local 6 // int frameLengthInt
        15: .line 436
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            iload 6 /* frameLengthInt */
            if_icmpge 17
        16: .line 437
            aconst_null
            areturn
        17: .line 440
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.initialBytesToStrip:I
            iload 6 /* frameLengthInt */
            if_icmple 19
        18: .line 441
            aload 2 /* in */
            lload 4 /* frameLength */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.initialBytesToStrip:I
            invokestatic io.netty.handler.codec.LengthFieldBasedFrameDecoder.failOnFrameLengthLessThanInitialBytesToStrip:(Lio/netty/buffer/ByteBuf;JI)V
        19: .line 443
      StackMap locals:
      StackMap stack:
            aload 2 /* in */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.initialBytesToStrip:I
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
        20: .line 446
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readerIndex:()I
            istore 7 /* readerIndex */
        start local 7 // int readerIndex
        21: .line 447
            iload 6 /* frameLengthInt */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.initialBytesToStrip:I
            isub
            istore 8 /* actualFrameLength */
        start local 8 // int actualFrameLength
        22: .line 448
            aload 0 /* this */
            aload 1 /* ctx */
            aload 2 /* in */
            iload 7 /* readerIndex */
            iload 8 /* actualFrameLength */
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.extractFrame:(Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf;
            astore 9 /* frame */
        start local 9 // io.netty.buffer.ByteBuf frame
        23: .line 449
            aload 2 /* in */
            iload 7 /* readerIndex */
            iload 8 /* actualFrameLength */
            iadd
            invokevirtual io.netty.buffer.ByteBuf.readerIndex:(I)Lio/netty/buffer/ByteBuf;
            pop
        24: .line 450
            aload 9 /* frame */
            areturn
        end local 9 // io.netty.buffer.ByteBuf frame
        end local 8 // int actualFrameLength
        end local 7 // int readerIndex
        end local 6 // int frameLengthInt
        end local 4 // long frameLength
        end local 3 // int actualLengthFieldOffset
        end local 2 // io.netty.buffer.ByteBuf in
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   25     0                     this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0   25     1                      ctx  Lio/netty/channel/ChannelHandlerContext;
            0   25     2                       in  Lio/netty/buffer/ByteBuf;
            5   25     3  actualLengthFieldOffset  I
            6   25     4              frameLength  J
           15   25     6           frameLengthInt  I
           21   25     7              readerIndex  I
           22   25     8        actualFrameLength  I
           23   25     9                    frame  Lio/netty/buffer/ByteBuf;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      ctx   
      in    

  protected long getUnadjustedFrameLength(io.netty.buffer.ByteBuf, int, int, java.nio.ByteOrder);
    descriptor: (Lio/netty/buffer/ByteBuf;IILjava/nio/ByteOrder;)J
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // io.netty.buffer.ByteBuf buf
        start local 2 // int offset
        start local 3 // int length
        start local 4 // java.nio.ByteOrder order
         0: .line 462
            aload 1 /* buf */
            aload 4 /* order */
            invokevirtual io.netty.buffer.ByteBuf.order:(Ljava/nio/ByteOrder;)Lio/netty/buffer/ByteBuf;
            astore 1 /* buf */
         1: .line 464
            iload 3 /* length */
            tableswitch { // 1 - 8
                    1: 2
                    2: 4
                    3: 6
                    4: 8
                    5: 12
                    6: 12
                    7: 12
                    8: 10
              default: 12
          }
         2: .line 466
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iload 2 /* offset */
            invokevirtual io.netty.buffer.ByteBuf.getUnsignedByte:(I)S
            i2l
            lstore 5 /* frameLength */
        start local 5 // long frameLength
         3: .line 467
            goto 15
        end local 5 // long frameLength
         4: .line 469
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iload 2 /* offset */
            invokevirtual io.netty.buffer.ByteBuf.getUnsignedShort:(I)I
            i2l
            lstore 5 /* frameLength */
        start local 5 // long frameLength
         5: .line 470
            goto 15
        end local 5 // long frameLength
         6: .line 472
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iload 2 /* offset */
            invokevirtual io.netty.buffer.ByteBuf.getUnsignedMedium:(I)I
            i2l
            lstore 5 /* frameLength */
        start local 5 // long frameLength
         7: .line 473
            goto 15
        end local 5 // long frameLength
         8: .line 475
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iload 2 /* offset */
            invokevirtual io.netty.buffer.ByteBuf.getUnsignedInt:(I)J
            lstore 5 /* frameLength */
        start local 5 // long frameLength
         9: .line 476
            goto 15
        end local 5 // long frameLength
        10: .line 478
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            iload 2 /* offset */
            invokevirtual io.netty.buffer.ByteBuf.getLong:(I)J
            lstore 5 /* frameLength */
        start local 5 // long frameLength
        11: .line 479
            goto 15
        end local 5 // long frameLength
        12: .line 481
      StackMap locals:
      StackMap stack:
            new io.netty.handler.codec.DecoderException
            dup
        13: .line 482
            new java.lang.StringBuilder
            dup
            ldc "unsupported lengthFieldLength: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.lengthFieldLength:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " (expected: 1, 2, 3, 4, or 8)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 481
            invokespecial io.netty.handler.codec.DecoderException.<init>:(Ljava/lang/String;)V
            athrow
        start local 5 // long frameLength
        15: .line 484
      StackMap locals: long
      StackMap stack:
            lload 5 /* frameLength */
            lreturn
        end local 5 // long frameLength
        end local 4 // java.nio.ByteOrder order
        end local 3 // int length
        end local 2 // int offset
        end local 1 // io.netty.buffer.ByteBuf buf
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0   16     1          buf  Lio/netty/buffer/ByteBuf;
            0   16     2       offset  I
            0   16     3       length  I
            0   16     4        order  Ljava/nio/ByteOrder;
            3    4     5  frameLength  J
            5    6     5  frameLength  J
            7    8     5  frameLength  J
            9   10     5  frameLength  J
           11   12     5  frameLength  J
           15   16     5  frameLength  J
    MethodParameters:
        Name  Flags
      buf     
      offset  
      length  
      order   

  private void failIfNecessary(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // boolean firstDetectionOfTooLongFrame
         0: .line 488
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.bytesToDiscard:J
            lconst_0
            lcmp
            ifne 7
         1: .line 491
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.tooLongFrameLength:J
            lstore 2 /* tooLongFrameLength */
        start local 2 // long tooLongFrameLength
         2: .line 492
            aload 0 /* this */
            lconst_0
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.tooLongFrameLength:J
         3: .line 493
            aload 0 /* this */
            iconst_0
            putfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.discardingTooLongFrame:Z
         4: .line 494
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.failFast:Z
            ifeq 5
            iload 1 /* firstDetectionOfTooLongFrame */
            ifeq 9
         5: .line 495
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            lload 2 /* tooLongFrameLength */
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.fail:(J)V
        end local 2 // long tooLongFrameLength
         6: .line 497
            goto 9
         7: .line 499
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.failFast:Z
            ifeq 9
            iload 1 /* firstDetectionOfTooLongFrame */
            ifeq 9
         8: .line 500
            aload 0 /* this */
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.tooLongFrameLength:J
            invokevirtual io.netty.handler.codec.LengthFieldBasedFrameDecoder.fail:(J)V
         9: .line 503
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean firstDetectionOfTooLongFrame
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   10     0                          this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0   10     1  firstDetectionOfTooLongFrame  Z
            2    6     2            tooLongFrameLength  J
    MethodParameters:
                              Name  Flags
      firstDetectionOfTooLongFrame  

  protected io.netty.buffer.ByteBuf extractFrame(io.netty.channel.ChannelHandlerContext, io.netty.buffer.ByteBuf, int, int);
    descriptor: (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;II)Lio/netty/buffer/ByteBuf;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
        start local 2 // io.netty.buffer.ByteBuf buffer
        start local 3 // int index
        start local 4 // int length
         0: .line 517
            aload 2 /* buffer */
            iload 3 /* index */
            iload 4 /* length */
            invokevirtual io.netty.buffer.ByteBuf.retainedSlice:(II)Lio/netty/buffer/ByteBuf;
            areturn
        end local 4 // int length
        end local 3 // int index
        end local 2 // io.netty.buffer.ByteBuf buffer
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0    1     1     ctx  Lio/netty/channel/ChannelHandlerContext;
            0    1     2  buffer  Lio/netty/buffer/ByteBuf;
            0    1     3   index  I
            0    1     4  length  I
    MethodParameters:
        Name  Flags
      ctx     
      buffer  
      index   
      length  

  private void fail(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
        start local 1 // long frameLength
         0: .line 521
            lload 1 /* frameLength */
            lconst_0
            lcmp
            ifle 6
         1: .line 522
            new io.netty.handler.codec.TooLongFrameException
            dup
         2: .line 523
            new java.lang.StringBuilder
            dup
            ldc "Adjusted frame length exceeds "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.maxFrameLength:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 524
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            lload 1 /* frameLength */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " - discarded"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 523
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 522
            invokespecial io.netty.handler.codec.TooLongFrameException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 526
      StackMap locals:
      StackMap stack:
            new io.netty.handler.codec.TooLongFrameException
            dup
         7: .line 527
            new java.lang.StringBuilder
            dup
            ldc "Adjusted frame length exceeds "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.netty.handler.codec.LengthFieldBasedFrameDecoder.maxFrameLength:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         8: .line 528
            ldc " - discarding"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         9: .line 527
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 526
            invokespecial io.netty.handler.codec.TooLongFrameException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // long frameLength
        end local 0 // io.netty.handler.codec.LengthFieldBasedFrameDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lio/netty/handler/codec/LengthFieldBasedFrameDecoder;
            0   11     1  frameLength  J
    MethodParameters:
             Name  Flags
      frameLength  
}
SourceFile: "LengthFieldBasedFrameDecoder.java"