public abstract class io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder<M extends io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage> extends io.netty.handler.codec.memcache.AbstractMemcacheObjectDecoder
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder
  super_class: io.netty.handler.codec.memcache.AbstractMemcacheObjectDecoder
{
  public static final int DEFAULT_MAX_CHUNK_SIZE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8192

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

  private M currentMessage;
    descriptor: Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
    flags: (0x0002) ACC_PRIVATE
    Signature: TM;

  private int alreadyReadChunkSize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State state;
    descriptor: Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;

  private static volatile int[] $SWITCH_TABLE$io$netty$handler$codec$memcache$binary$AbstractBinaryMemcacheDecoder$State;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
         0: .line 53
            aload 0 /* this */
            sipush 8192
            invokespecial io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.<init>:(I)V
         1: .line 54
            return
        end local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder<TM;>;

  protected void <init>(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
        start local 1 // int chunkSize
         0: .line 61
            aload 0 /* this */
            invokespecial io.netty.handler.codec.memcache.AbstractMemcacheObjectDecoder.<init>:()V
         1: .line 47
            aload 0 /* this */
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_HEADER:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
         2: .line 62
            iload 1 /* chunkSize */
            ifge 4
         3: .line 63
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "chunkSize must be a positive integer: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* chunkSize */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 66
      StackMap locals: io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* chunkSize */
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.chunkSize:I
         5: .line 67
            return
        end local 1 // int chunkSize
        end local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder<TM;>;
            0    6     1  chunkSize  I
    MethodParameters:
           Name  Flags
      chunkSize  

  protected 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: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=9, args_size=4
        start local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder 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 71
            invokestatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.$SWITCH_TABLE$io$netty$handler$codec$memcache$binary$AbstractBinaryMemcacheDecoder$State:()[I
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.ordinal:()I
            iaload
            tableswitch { // 1 - 5
                    1: 1
                    2: 11
                    3: 22
                    4: 34
                    5: 64
              default: 66
          }
         1: .line 73
      StackMap locals:
      StackMap stack:
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            bipush 24
            if_icmpge 3
         2: .line 74
            return
         3: .line 76
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.resetDecoder:()V
         4: .line 78
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* in */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.decodeHeader:(Lio/netty/buffer/ByteBuf;)Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
         5: .line 79
            aload 0 /* this */
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_EXTRAS:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
         6: .line 80
            goto 11
      StackMap locals:
      StackMap stack: java.lang.Exception
         7: astore 4 /* e */
        start local 4 // java.lang.Exception e
         8: .line 81
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.resetDecoder:()V
         9: .line 82
            aload 3 /* out */
            aload 0 /* this */
            aload 4 /* e */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.invalidMessage:(Ljava/lang/Exception;)Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        10: .line 83
            return
        end local 4 // java.lang.Exception e
        11: .line 86
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.extrasLength:()B
            istore 4 /* extrasLength */
        start local 4 // byte extrasLength
        12: .line 87
            iload 4 /* extrasLength */
            ifle 16
        13: .line 88
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            iload 4 /* extrasLength */
            if_icmpge 15
        14: .line 89
            return
        15: .line 92
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            aload 2 /* in */
            iload 4 /* extrasLength */
            invokevirtual io.netty.buffer.ByteBuf.readRetainedSlice:(I)Lio/netty/buffer/ByteBuf;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.setExtras:(Lio/netty/buffer/ByteBuf;)Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            pop
        16: .line 95
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_KEY:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
        end local 4 // byte extrasLength
        17: .line 96
            goto 22
      StackMap locals: io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder io.netty.channel.ChannelHandlerContext io.netty.buffer.ByteBuf java.util.List
      StackMap stack: java.lang.Exception
        18: astore 4 /* e */
        start local 4 // java.lang.Exception e
        19: .line 97
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.resetDecoder:()V
        20: .line 98
            aload 3 /* out */
            aload 0 /* this */
            aload 4 /* e */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.invalidMessage:(Ljava/lang/Exception;)Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        21: .line 99
            return
        end local 4 // java.lang.Exception e
        22: .line 102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.keyLength:()S
            istore 4 /* keyLength */
        start local 4 // short keyLength
        23: .line 103
            iload 4 /* keyLength */
            ifle 27
        24: .line 104
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            iload 4 /* keyLength */
            if_icmpge 26
        25: .line 105
            return
        26: .line 108
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            aload 2 /* in */
            iload 4 /* keyLength */
            invokevirtual io.netty.buffer.ByteBuf.readRetainedSlice:(I)Lio/netty/buffer/ByteBuf;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.setKey:(Lio/netty/buffer/ByteBuf;)Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            pop
        27: .line 110
      StackMap locals:
      StackMap stack:
            aload 3 /* out */
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.retain:()Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        28: .line 111
            aload 0 /* this */
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_CONTENT:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
        end local 4 // short keyLength
        29: .line 112
            goto 34
      StackMap locals: io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder io.netty.channel.ChannelHandlerContext io.netty.buffer.ByteBuf java.util.List
      StackMap stack: java.lang.Exception
        30: astore 4 /* e */
        start local 4 // java.lang.Exception e
        31: .line 113
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.resetDecoder:()V
        32: .line 114
            aload 3 /* out */
            aload 0 /* this */
            aload 4 /* e */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.invalidMessage:(Ljava/lang/Exception;)Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        33: .line 115
            return
        end local 4 // java.lang.Exception e
        34: .line 118
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.totalBodyLength:()I
        35: .line 119
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.keyLength:()S
        36: .line 118
            isub
        37: .line 120
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.extrasLength:()B
        38: .line 118
            isub
            istore 4 /* valueLength */
        start local 4 // int valueLength
        39: .line 121
            aload 2 /* in */
            invokevirtual io.netty.buffer.ByteBuf.readableBytes:()I
            istore 5 /* toRead */
        start local 5 // int toRead
        40: .line 122
            iload 4 /* valueLength */
            ifle 56
        41: .line 123
            iload 5 /* toRead */
            ifne 43
        42: .line 124
            return
        43: .line 127
      StackMap locals: int int
      StackMap stack:
            iload 5 /* toRead */
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.chunkSize:I
            if_icmple 45
        44: .line 128
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.chunkSize:I
            istore 5 /* toRead */
        45: .line 131
      StackMap locals:
      StackMap stack:
            iload 4 /* valueLength */
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.alreadyReadChunkSize:I
            isub
            istore 6 /* remainingLength */
        start local 6 // int remainingLength
        46: .line 132
            iload 5 /* toRead */
            iload 6 /* remainingLength */
            if_icmple 48
        47: .line 133
            iload 6 /* remainingLength */
            istore 5 /* toRead */
        48: .line 136
      StackMap locals: int
      StackMap stack:
            aload 2 /* in */
            iload 5 /* toRead */
            invokevirtual io.netty.buffer.ByteBuf.readRetainedSlice:(I)Lio/netty/buffer/ByteBuf;
            astore 7 /* chunkBuffer */
        start local 7 // io.netty.buffer.ByteBuf chunkBuffer
        49: .line 139
            aload 0 /* this */
            dup
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.alreadyReadChunkSize:I
            iload 5 /* toRead */
            iadd
            dup_x1
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.alreadyReadChunkSize:I
            iload 4 /* valueLength */
            if_icmplt 52
        50: .line 140
            new io.netty.handler.codec.memcache.DefaultLastMemcacheContent
            dup
            aload 7 /* chunkBuffer */
            invokespecial io.netty.handler.codec.memcache.DefaultLastMemcacheContent.<init>:(Lio/netty/buffer/ByteBuf;)V
            astore 8 /* chunk */
        start local 8 // io.netty.handler.codec.memcache.MemcacheContent chunk
        51: .line 141
            goto 53
        end local 8 // io.netty.handler.codec.memcache.MemcacheContent chunk
        52: .line 142
      StackMap locals: io.netty.buffer.ByteBuf
      StackMap stack:
            new io.netty.handler.codec.memcache.DefaultMemcacheContent
            dup
            aload 7 /* chunkBuffer */
            invokespecial io.netty.handler.codec.memcache.DefaultMemcacheContent.<init>:(Lio/netty/buffer/ByteBuf;)V
            astore 8 /* chunk */
        start local 8 // io.netty.handler.codec.memcache.MemcacheContent chunk
        53: .line 145
      StackMap locals: io.netty.handler.codec.memcache.MemcacheContent
      StackMap stack:
            aload 3 /* out */
            aload 8 /* chunk */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        54: .line 146
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.alreadyReadChunkSize:I
            iload 4 /* valueLength */
            if_icmpge 57
        55: .line 147
            return
        end local 8 // io.netty.handler.codec.memcache.MemcacheContent chunk
        end local 7 // io.netty.buffer.ByteBuf chunkBuffer
        end local 6 // int remainingLength
        56: .line 150
      StackMap locals:
      StackMap stack:
            aload 3 /* out */
            getstatic io.netty.handler.codec.memcache.LastMemcacheContent.EMPTY_LAST_CONTENT:Lio/netty/handler/codec/memcache/LastMemcacheContent;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        57: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.resetDecoder:()V
        58: .line 154
            aload 0 /* this */
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_HEADER:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
        59: .line 155
            return
        end local 5 // int toRead
        end local 4 // int valueLength
        60: .line 156
      StackMap locals: io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder io.netty.channel.ChannelHandlerContext io.netty.buffer.ByteBuf java.util.List
      StackMap stack: java.lang.Exception
            astore 4 /* e */
        start local 4 // java.lang.Exception e
        61: .line 157
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.resetDecoder:()V
        62: .line 158
            aload 3 /* out */
            aload 0 /* this */
            aload 4 /* e */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.invalidChunk:(Ljava/lang/Exception;)Lio/netty/handler/codec/memcache/MemcacheContent;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        63: .line 159
            return
        end local 4 // java.lang.Exception e
        64: .line 162
      StackMap locals:
      StackMap stack:
            aload 2 /* in */
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.actualReadableBytes:()I
            invokevirtual io.netty.buffer.ByteBuf.skipBytes:(I)Lio/netty/buffer/ByteBuf;
            pop
        65: .line 163
            return
        66: .line 165
      StackMap locals:
      StackMap stack:
            new java.lang.Error
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown state reached: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        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.memcache.binary.AbstractBinaryMemcacheDecoder this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   67     0             this  Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder<TM;>;
            0   67     1              ctx  Lio/netty/channel/ChannelHandlerContext;
            0   67     2               in  Lio/netty/buffer/ByteBuf;
            0   67     3              out  Ljava/util/List<Ljava/lang/Object;>;
            8   11     4                e  Ljava/lang/Exception;
           12   17     4     extrasLength  B
           19   22     4                e  Ljava/lang/Exception;
           23   29     4        keyLength  S
           31   34     4                e  Ljava/lang/Exception;
           39   60     4      valueLength  I
           40   60     5           toRead  I
           46   56     6  remainingLength  I
           49   56     7      chunkBuffer  Lio/netty/buffer/ByteBuf;
           51   52     8            chunk  Lio/netty/handler/codec/memcache/MemcacheContent;
           53   56     8            chunk  Lio/netty/handler/codec/memcache/MemcacheContent;
           61   64     4                e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     2       7  Class java.lang.Exception
           3     6       7  Class java.lang.Exception
          11    14      18  Class java.lang.Exception
          15    17      18  Class java.lang.Exception
          22    25      30  Class java.lang.Exception
          26    29      30  Class java.lang.Exception
          34    42      60  Class java.lang.Exception
          43    55      60  Class java.lang.Exception
          56    59      60  Class java.lang.Exception
    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 M invalidMessage(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
        start local 1 // java.lang.Exception cause
         0: .line 176
            aload 0 /* this */
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.BAD_MESSAGE:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
         1: .line 177
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.buildInvalidMessage:()Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            astore 2 /* message */
        start local 2 // io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage message
         2: .line 178
            aload 2 /* message */
            aload 1 /* cause */
            invokestatic io.netty.handler.codec.DecoderResult.failure:(Ljava/lang/Throwable;)Lio/netty/handler/codec/DecoderResult;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.setDecoderResult:(Lio/netty/handler/codec/DecoderResult;)V
         3: .line 179
            aload 2 /* message */
            areturn
        end local 2 // io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage message
        end local 1 // java.lang.Exception cause
        end local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder<TM;>;
            0    4     1    cause  Ljava/lang/Exception;
            2    4     2  message  TM;
    Signature: (Ljava/lang/Exception;)TM;
    MethodParameters:
       Name  Flags
      cause  

  private io.netty.handler.codec.memcache.MemcacheContent invalidChunk(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)Lio/netty/handler/codec/memcache/MemcacheContent;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
        start local 1 // java.lang.Exception cause
         0: .line 189
            aload 0 /* this */
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.BAD_MESSAGE:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.state:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
         1: .line 190
            new io.netty.handler.codec.memcache.DefaultLastMemcacheContent
            dup
            getstatic io.netty.buffer.Unpooled.EMPTY_BUFFER:Lio/netty/buffer/ByteBuf;
            invokespecial io.netty.handler.codec.memcache.DefaultLastMemcacheContent.<init>:(Lio/netty/buffer/ByteBuf;)V
            astore 2 /* chunk */
        start local 2 // io.netty.handler.codec.memcache.MemcacheContent chunk
         2: .line 191
            aload 2 /* chunk */
            aload 1 /* cause */
            invokestatic io.netty.handler.codec.DecoderResult.failure:(Ljava/lang/Throwable;)Lio/netty/handler/codec/DecoderResult;
            invokeinterface io.netty.handler.codec.memcache.MemcacheContent.setDecoderResult:(Lio/netty/handler/codec/DecoderResult;)V
         3: .line 192
            aload 2 /* chunk */
            areturn
        end local 2 // io.netty.handler.codec.memcache.MemcacheContent chunk
        end local 1 // java.lang.Exception cause
        end local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder<TM;>;
            0    4     1  cause  Ljava/lang/Exception;
            2    4     2  chunk  Lio/netty/handler/codec/memcache/MemcacheContent;
    MethodParameters:
       Name  Flags
      cause  

  public void channelInactive(io.netty.channel.ChannelHandlerContext);
    descriptor: (Lio/netty/channel/ChannelHandlerContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
        start local 1 // io.netty.channel.ChannelHandlerContext ctx
         0: .line 203
            aload 0 /* this */
            aload 1 /* ctx */
            invokespecial io.netty.handler.codec.memcache.AbstractMemcacheObjectDecoder.channelInactive:(Lio/netty/channel/ChannelHandlerContext;)V
         1: .line 205
            aload 0 /* this */
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.resetDecoder:()V
         2: .line 206
            return
        end local 1 // io.netty.channel.ChannelHandlerContext ctx
        end local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder<TM;>;
            0    3     1   ctx  Lio/netty/channel/ChannelHandlerContext;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      ctx   

  protected void resetDecoder();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
         0: .line 212
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            ifnull 3
         1: .line 213
            aload 0 /* this */
            getfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
            invokeinterface io.netty.handler.codec.memcache.binary.BinaryMemcacheMessage.release:()Z
            pop
         2: .line 214
            aload 0 /* this */
            aconst_null
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.currentMessage:Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
         3: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.alreadyReadChunkSize:I
         4: .line 217
            return
        end local 0 // io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder<TM;>;

  protected abstract M decodeHeader(io.netty.buffer.ByteBuf);
    descriptor: (Lio/netty/buffer/ByteBuf;)Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: (Lio/netty/buffer/ByteBuf;)TM;
    MethodParameters:
      Name  Flags
      in    

  protected abstract M buildInvalidMessage();
    descriptor: ()Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Signature: ()TM;

  static int[] $SWITCH_TABLE$io$netty$handler$codec$memcache$binary$AbstractBinaryMemcacheDecoder$State();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 37
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.$SWITCH_TABLE$io$netty$handler$codec$memcache$binary$AbstractBinaryMemcacheDecoder$State:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.values:()[Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.BAD_MESSAGE:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.ordinal:()I
            iconst_5
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_CONTENT:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.ordinal:()I
            iconst_4
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_EXTRAS:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_HEADER:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.ordinal:()I
            iconst_1
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.READ_KEY:Lio/netty/handler/codec/memcache/binary/AbstractBinaryMemcacheDecoder$State;
            invokevirtual io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State.ordinal:()I
            iconst_3
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            dup
            putstatic io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder.$SWITCH_TABLE$io$netty$handler$codec$memcache$binary$AbstractBinaryMemcacheDecoder$State:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
}
Signature: <M::Lio/netty/handler/codec/memcache/binary/BinaryMemcacheMessage;>Lio/netty/handler/codec/memcache/AbstractMemcacheObjectDecoder;
SourceFile: "AbstractBinaryMemcacheDecoder.java"
NestMembers:
  io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State
InnerClasses:
  final State = io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder$State of io.netty.handler.codec.memcache.binary.AbstractBinaryMemcacheDecoder