public class com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator
  super_class: java.lang.Object
{
  protected final com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator _parent;
    descriptor: Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final byte[] _prefixBuffer;
    descriptor: [B
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int _prefixOffset;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int _typedTag;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment _firstSegment;
    descriptor: Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
    flags: (0x0004) ACC_PROTECTED

  protected com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment _lastSegment;
    descriptor: Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
    flags: (0x0004) ACC_PROTECTED

  protected int _segmentBytes;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int _parentStart;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  public void <init>(com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator, int, byte[], int, int);
    descriptor: (Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;I[BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
        start local 1 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator p
        start local 2 // int typedTag
        start local 3 // byte[] prefixBuffer
        start local 4 // int prefixOffset
        start local 5 // int parentStart
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 47
            aload 0 /* this */
            aload 1 /* p */
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
         2: .line 48
            aload 0 /* this */
            iload 2 /* typedTag */
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._typedTag:I
         3: .line 49
            aload 0 /* this */
            aload 3 /* prefixBuffer */
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._prefixBuffer:[B
         4: .line 50
            aload 0 /* this */
            iload 4 /* prefixOffset */
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._prefixOffset:I
         5: .line 51
            aload 0 /* this */
            iload 5 /* parentStart */
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parentStart:I
         6: .line 52
            return
        end local 5 // int parentStart
        end local 4 // int prefixOffset
        end local 3 // byte[] prefixBuffer
        end local 2 // int typedTag
        end local 1 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator p
        end local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            0    7     1             p  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            0    7     2      typedTag  I
            0    7     3  prefixBuffer  [B
            0    7     4  prefixOffset  I
            0    7     5   parentStart  I
    MethodParameters:
              Name  Flags
      p             
      typedTag      
      prefixBuffer  
      prefixOffset  
      parentStart   

  public void append(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
        start local 1 // byte[] buf
        start local 2 // int offset
        start local 3 // int len
         0: .line 55
            new com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment
            dup
            aload 1 /* buf */
            iload 2 /* offset */
            iload 3 /* len */
            invokespecial com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment.<init>:([BII)V
            astore 4 /* s */
        start local 4 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment s
         1: .line 56
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            ifnonnull 4
         2: .line 57
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* s */
            dup_x1
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
         3: .line 58
            goto 5
         4: .line 59
      StackMap locals: com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            aload 4 /* s */
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment.linkNext:(Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;)Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
         5: .line 61
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._segmentBytes:I
            iload 3 /* len */
            iadd
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._segmentBytes:I
         6: .line 62
            return
        end local 4 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment s
        end local 3 // int len
        end local 2 // int offset
        end local 1 // byte[] buf
        end local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            0    7     1     buf  [B
            0    7     2  offset  I
            0    7     3     len  I
            1    7     4       s  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
    MethodParameters:
        Name  Flags
      buf     
      offset  
      len     

  public com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator finish(java.io.OutputStream, byte[], int, int);
    descriptor: (Ljava/io/OutputStream;[BII)Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
        start local 1 // java.io.OutputStream out
        start local 2 // byte[] input
        start local 3 // int offset
        start local 4 // int len
         0: .line 67
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._prefixBuffer:[B
            astore 5 /* prefixBuf */
        start local 5 // byte[] prefixBuf
         1: .line 71
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._typedTag:I
            iconst_m1
            if_icmpne 4
         2: .line 72
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._prefixOffset:I
            istore 6 /* ptr */
        start local 6 // int ptr
         3: .line 73
            goto 5
        end local 6 // int ptr
         4: .line 74
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._typedTag:I
            aload 5 /* prefixBuf */
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._prefixOffset:I
            invokestatic com.fasterxml.jackson.dataformat.protobuf.ProtobufUtil.appendLengthLength:(I[BI)I
            istore 6 /* ptr */
        start local 6 // int ptr
         5: .line 77
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._segmentBytes:I
            iload 4 /* len */
            iadd
            istore 7 /* plen */
        start local 7 // int plen
         6: .line 78
            iload 7 /* plen */
            aload 5 /* prefixBuf */
            iload 6 /* ptr */
            invokestatic com.fasterxml.jackson.dataformat.protobuf.ProtobufUtil.appendLengthLength:(I[BI)I
            istore 6 /* ptr */
         7: .line 81
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parentStart:I
            istore 8 /* writeStart */
        start local 8 // int writeStart
         8: .line 82
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            ifnonnull 18
         9: .line 85
            aload 1 /* out */
            aload 5 /* prefixBuf */
            iload 8 /* writeStart */
            iload 6 /* ptr */
            iload 8 /* writeStart */
            isub
            invokevirtual java.io.OutputStream.write:([BII)V
        10: .line 86
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            astore 9 /* s */
        start local 9 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment s
        11: goto 14
        12: .line 87
      StackMap locals: int int com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment
      StackMap stack:
            aload 9 /* s */
            aload 1 /* out */
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment.writeTo:(Ljava/io/OutputStream;)V
        13: .line 86
            aload 9 /* s */
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment.next:()Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            astore 9 /* s */
      StackMap locals:
      StackMap stack:
        14: aload 9 /* s */
            ifnonnull 12
        end local 9 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment s
        15: .line 89
            iload 4 /* len */
            ifle 23
        16: .line 90
            aload 1 /* out */
            aload 2 /* input */
            iload 3 /* offset */
            iload 4 /* len */
            invokevirtual java.io.OutputStream.write:([BII)V
        17: .line 92
            goto 23
        18: .line 95
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            aload 5 /* prefixBuf */
            iload 8 /* writeStart */
            iload 6 /* ptr */
            iload 8 /* writeStart */
            isub
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator.append:([BII)V
        19: .line 96
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            ifnull 21
        20: .line 97
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._segmentBytes:I
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator.appendAll:(Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;I)V
        21: .line 99
      StackMap locals:
      StackMap stack:
            iload 4 /* len */
            ifle 23
        22: .line 100
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            aload 2 /* input */
            iload 3 /* offset */
            iload 4 /* len */
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator.append:([BII)V
        23: .line 103
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            areturn
        end local 8 // int writeStart
        end local 7 // int plen
        end local 6 // int ptr
        end local 5 // byte[] prefixBuf
        end local 4 // int len
        end local 3 // int offset
        end local 2 // byte[] input
        end local 1 // java.io.OutputStream out
        end local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   24     0        this  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            0   24     1         out  Ljava/io/OutputStream;
            0   24     2       input  [B
            0   24     3      offset  I
            0   24     4         len  I
            1   24     5   prefixBuf  [B
            3    4     6         ptr  I
            5   24     6         ptr  I
            6   24     7        plen  I
            8   24     8  writeStart  I
           11   15     9           s  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      out     
      input   
      offset  
      len     

  public com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator finish(java.io.OutputStream, byte[]);
    descriptor: (Ljava/io/OutputStream;[B)Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
        start local 1 // java.io.OutputStream out
        start local 2 // byte[] input
         0: .line 109
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._prefixBuffer:[B
            astore 4 /* prefixBuf */
        start local 4 // byte[] prefixBuf
         1: .line 111
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._typedTag:I
            iconst_m1
            if_icmpne 4
         2: .line 112
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._prefixOffset:I
            istore 3 /* ptr */
        start local 3 // int ptr
         3: .line 113
            goto 5
        end local 3 // int ptr
         4: .line 114
      StackMap locals: com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator java.io.OutputStream byte[] top byte[]
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._typedTag:I
            aload 4 /* prefixBuf */
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._prefixOffset:I
            invokestatic com.fasterxml.jackson.dataformat.protobuf.ProtobufUtil.appendLengthLength:(I[BI)I
            istore 3 /* ptr */
        start local 3 // int ptr
         5: .line 116
      StackMap locals: com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator java.io.OutputStream byte[] int byte[]
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._segmentBytes:I
            istore 5 /* plen */
        start local 5 // int plen
         6: .line 117
            iload 5 /* plen */
            aload 4 /* prefixBuf */
            iload 3 /* ptr */
            invokestatic com.fasterxml.jackson.dataformat.protobuf.ProtobufUtil.appendLengthLength:(I[BI)I
            istore 3 /* ptr */
         7: .line 119
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parentStart:I
            istore 6 /* writeStart */
        start local 6 // int writeStart
         8: .line 121
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            ifnonnull 16
         9: .line 124
            aload 1 /* out */
            aload 4 /* prefixBuf */
            iload 6 /* writeStart */
            iload 3 /* ptr */
            iload 6 /* writeStart */
            isub
            invokevirtual java.io.OutputStream.write:([BII)V
        10: .line 125
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            astore 7 /* s */
        start local 7 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment s
        11: goto 14
        12: .line 126
      StackMap locals: int int com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment
      StackMap stack:
            aload 7 /* s */
            aload 1 /* out */
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment.writeTo:(Ljava/io/OutputStream;)V
        13: .line 125
            aload 7 /* s */
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment.next:()Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            astore 7 /* s */
      StackMap locals:
      StackMap stack:
        14: aload 7 /* s */
            ifnonnull 12
        end local 7 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment s
        15: .line 128
            goto 19
        16: .line 129
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            aload 4 /* prefixBuf */
            iload 6 /* writeStart */
            iload 3 /* ptr */
            iload 6 /* writeStart */
            isub
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator.append:([BII)V
        17: .line 130
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            ifnull 19
        18: .line 131
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._segmentBytes:I
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator.appendAll:(Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;I)V
        19: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._parent:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            areturn
        end local 6 // int writeStart
        end local 5 // int plen
        end local 4 // byte[] prefixBuf
        end local 3 // int ptr
        end local 2 // byte[] input
        end local 1 // java.io.OutputStream out
        end local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0        this  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            0   20     1         out  Ljava/io/OutputStream;
            0   20     2       input  [B
            3    4     3         ptr  I
            5   20     3         ptr  I
            1   20     4   prefixBuf  [B
            6   20     5        plen  I
            8   20     6  writeStart  I
           11   15     7           s  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      out    
      input  

  private void appendAll(com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment, com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment, int);
    descriptor: (Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
        start local 1 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment first
        start local 2 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment last
        start local 3 // int segmentBytes
         0: .line 139
            aload 0 /* this */
            dup
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._segmentBytes:I
            iload 3 /* segmentBytes */
            iadd
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._segmentBytes:I
         1: .line 141
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            ifnonnull 5
         2: .line 142
            aload 0 /* this */
            aload 1 /* first */
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._firstSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
         3: .line 143
            aload 0 /* this */
            aload 2 /* last */
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
         4: .line 144
            goto 7
         5: .line 145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            aload 1 /* first */
            invokevirtual com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment.linkNext:(Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;)Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            pop
         6: .line 146
            aload 0 /* this */
            aload 2 /* last */
            putfield com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator._lastSegment:Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
         7: .line 148
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int segmentBytes
        end local 2 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment last
        end local 1 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment first
        end local 0 // com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator;
            0    8     1         first  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            0    8     2          last  Lcom/fasterxml/jackson/dataformat/protobuf/ByteAccumulator$Segment;
            0    8     3  segmentBytes  I
    MethodParameters:
              Name  Flags
      first         
      last          
      segmentBytes  
}
SourceFile: "ByteAccumulator.java"
NestMembers:
  com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment
InnerClasses:
  private final Segment = com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator$Segment of com.fasterxml.jackson.dataformat.protobuf.ByteAccumulator