final class com.google.protobuf.BinaryWriter$UnsafeHeapWriter extends com.google.protobuf.BinaryWriter
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.google.protobuf.BinaryWriter$UnsafeHeapWriter
  super_class: com.google.protobuf.BinaryWriter
{
  private com.google.protobuf.AllocatedBuffer allocatedBuffer;
    descriptor: Lcom/google/protobuf/AllocatedBuffer;
    flags: (0x0002) ACC_PRIVATE

  private byte[] buffer;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

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

  void <init>(com.google.protobuf.BufferAllocator, int);
    descriptor: (Lcom/google/protobuf/BufferAllocator;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // com.google.protobuf.BufferAllocator alloc
        start local 2 // int chunkSize
         0: .line 1457
            aload 0 /* this */
            aload 1 /* alloc */
            iload 2 /* chunkSize */
            invokespecial com.google.protobuf.BinaryWriter.<init>:(Lcom/google/protobuf/BufferAllocator;I)V
         1: .line 1458
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.nextBuffer:()V
         2: .line 1459
            return
        end local 2 // int chunkSize
        end local 1 // com.google.protobuf.BufferAllocator alloc
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    3     1      alloc  Lcom/google/protobuf/BufferAllocator;
            0    3     2  chunkSize  I
    MethodParameters:
           Name  Flags
      alloc      
      chunkSize  

  static boolean isSupported();
    descriptor: ()Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1463
            invokestatic com.google.protobuf.UnsafeUtil.hasUnsafeArrayOperations:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void finishCurrentBuffer();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
         0: .line 1468
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.allocatedBuffer:Lcom/google/protobuf/AllocatedBuffer;
            ifnull 6
         1: .line 1469
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.totalDoneBytes:I
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.bytesWrittenToCurrentBuffer:()I
            iadd
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.totalDoneBytes:I
         2: .line 1470
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.allocatedBuffer:Lcom/google/protobuf/AllocatedBuffer;
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.arrayPos:()I
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.allocatedBuffer:Lcom/google/protobuf/AllocatedBuffer;
            invokevirtual com.google.protobuf.AllocatedBuffer.arrayOffset:()I
            isub
            iconst_1
            iadd
            invokevirtual com.google.protobuf.AllocatedBuffer.position:(I)Lcom/google/protobuf/AllocatedBuffer;
            pop
         3: .line 1471
            aload 0 /* this */
            aconst_null
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.allocatedBuffer:Lcom/google/protobuf/AllocatedBuffer;
         4: .line 1472
            aload 0 /* this */
            lconst_0
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
         5: .line 1473
            aload 0 /* this */
            lconst_0
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.limitMinusOne:J
         6: .line 1475
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;

  private int arrayPos();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
         0: .line 1478
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            l2i
            ireturn
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;

  private void nextBuffer();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
         0: .line 1482
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.newHeapBuffer:()Lcom/google/protobuf/AllocatedBuffer;
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.nextBuffer:(Lcom/google/protobuf/AllocatedBuffer;)V
         1: .line 1483
            return
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;

  private void nextBuffer(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int capacity
         0: .line 1486
            aload 0 /* this */
            aload 0 /* this */
            iload 1 /* capacity */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.newHeapBuffer:(I)Lcom/google/protobuf/AllocatedBuffer;
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.nextBuffer:(Lcom/google/protobuf/AllocatedBuffer;)V
         1: .line 1487
            return
        end local 1 // int capacity
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  capacity  I
    MethodParameters:
          Name  Flags
      capacity  

  private void nextBuffer(com.google.protobuf.AllocatedBuffer);
    descriptor: (Lcom/google/protobuf/AllocatedBuffer;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // com.google.protobuf.AllocatedBuffer allocatedBuffer
         0: .line 1490
            aload 1 /* allocatedBuffer */
            invokevirtual com.google.protobuf.AllocatedBuffer.hasArray:()Z
            ifne 2
         1: .line 1491
            new java.lang.RuntimeException
            dup
            ldc "Allocator returned non-heap buffer"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1494
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.finishCurrentBuffer:()V
         3: .line 1495
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffers:Ljava/util/ArrayDeque;
            aload 1 /* allocatedBuffer */
            invokevirtual java.util.ArrayDeque.addFirst:(Ljava/lang/Object;)V
         4: .line 1497
            aload 0 /* this */
            aload 1 /* allocatedBuffer */
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.allocatedBuffer:Lcom/google/protobuf/AllocatedBuffer;
         5: .line 1498
            aload 0 /* this */
            aload 1 /* allocatedBuffer */
            invokevirtual com.google.protobuf.AllocatedBuffer.array:()[B
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
         6: .line 1499
            aload 1 /* allocatedBuffer */
            invokevirtual com.google.protobuf.AllocatedBuffer.arrayOffset:()I
            istore 2 /* arrayOffset */
        start local 2 // int arrayOffset
         7: .line 1500
            aload 0 /* this */
            iload 2 /* arrayOffset */
            aload 1 /* allocatedBuffer */
            invokevirtual com.google.protobuf.AllocatedBuffer.limit:()I
            iadd
            i2l
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.limit:J
         8: .line 1501
            aload 0 /* this */
            iload 2 /* arrayOffset */
            aload 1 /* allocatedBuffer */
            invokevirtual com.google.protobuf.AllocatedBuffer.position:()I
            iadd
            i2l
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.offset:J
         9: .line 1502
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.offset:J
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.offsetMinusOne:J
        10: .line 1503
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.limit:J
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.limitMinusOne:J
        11: .line 1504
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.limitMinusOne:J
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
        12: .line 1505
            return
        end local 2 // int arrayOffset
        end local 1 // com.google.protobuf.AllocatedBuffer allocatedBuffer
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   13     0             this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0   13     1  allocatedBuffer  Lcom/google/protobuf/AllocatedBuffer;
            7   13     2      arrayOffset  I
    MethodParameters:
                 Name  Flags
      allocatedBuffer  

  public int getTotalBytesWritten();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
         0: .line 1509
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.totalDoneBytes:I
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.bytesWrittenToCurrentBuffer:()I
            iadd
            ireturn
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;

  int bytesWrittenToCurrentBuffer();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
         0: .line 1513
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.limitMinusOne:J
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lsub
            l2i
            ireturn
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;

  int spaceLeft();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
         0: .line 1517
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.offsetMinusOne:J
            lsub
            l2i
            ireturn
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;

  public void writeUInt32(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 1522
            aload 0 /* this */
            bipush 10
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1523
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32:(I)V
         2: .line 1524
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1525
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  I
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeInt32(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 1529
            aload 0 /* this */
            bipush 15
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1530
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeInt32:(I)V
         2: .line 1531
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1532
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  I
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeSInt32(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 1536
            aload 0 /* this */
            bipush 10
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1537
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeSInt32:(I)V
         2: .line 1538
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1539
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  I
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeFixed32(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 1543
            aload 0 /* this */
            bipush 9
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1544
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeFixed32:(I)V
         2: .line 1545
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_5
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1546
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  I
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeUInt64(int, long);
    descriptor: (IJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // long value
         0: .line 1550
            aload 0 /* this */
            bipush 15
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1551
            aload 0 /* this */
            lload 2 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64:(J)V
         2: .line 1552
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1553
            return
        end local 2 // long value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  J
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeSInt64(int, long);
    descriptor: (IJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // long value
         0: .line 1557
            aload 0 /* this */
            bipush 15
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1558
            aload 0 /* this */
            lload 2 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeSInt64:(J)V
         2: .line 1559
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1560
            return
        end local 2 // long value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  J
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeFixed64(int, long);
    descriptor: (IJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // long value
         0: .line 1564
            aload 0 /* this */
            bipush 13
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1565
            aload 0 /* this */
            lload 2 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeFixed64:(J)V
         2: .line 1566
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_1
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1567
            return
        end local 2 // long value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  J
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeBool(int, boolean);
    descriptor: (IZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // boolean value
         0: .line 1571
            aload 0 /* this */
            bipush 6
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1572
            aload 0 /* this */
            iload 2 /* value */
            ifeq 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack: com.google.protobuf.BinaryWriter$UnsafeHeapWriter
         2: iconst_0
      StackMap locals: com.google.protobuf.BinaryWriter$UnsafeHeapWriter int int
      StackMap stack: com.google.protobuf.BinaryWriter$UnsafeHeapWriter int
         3: i2b
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.write:(B)V
         4: .line 1573
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         5: .line 1574
            return
        end local 2 // boolean value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    6     1  fieldNumber  I
            0    6     2        value  Z
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeString(int, java.lang.String);
    descriptor: (ILjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // java.lang.String value
         0: .line 1578
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.getTotalBytesWritten:()I
            istore 3 /* prevBytes */
        start local 3 // int prevBytes
         1: .line 1579
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeString:(Ljava/lang/String;)V
         2: .line 1580
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.getTotalBytesWritten:()I
            iload 3 /* prevBytes */
            isub
            istore 4 /* length */
        start local 4 // int length
         3: .line 1581
            aload 0 /* this */
            bipush 10
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         4: .line 1582
            aload 0 /* this */
            iload 4 /* length */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32:(I)V
         5: .line 1583
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         6: .line 1584
            return
        end local 4 // int length
        end local 3 // int prevBytes
        end local 2 // java.lang.String value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    7     1  fieldNumber  I
            0    7     2        value  Ljava/lang/String;
            1    7     3    prevBytes  I
            3    7     4       length  I
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeBytes(int, com.google.protobuf.ByteString);
    descriptor: (ILcom/google/protobuf/ByteString;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.ByteString value
         0: .line 1589
            aload 2 /* value */
            aload 0 /* this */
            invokevirtual com.google.protobuf.ByteString.writeToReverse:(Lcom/google/protobuf/ByteOutput;)V
         1: .line 1590
            goto 4
      StackMap locals:
      StackMap stack: java.io.IOException
         2: astore 3 /* e */
        start local 3 // java.io.IOException e
         3: .line 1592
            new java.lang.RuntimeException
            dup
            aload 3 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.io.IOException e
         4: .line 1595
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 10
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         5: .line 1596
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.ByteString.size:()I
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32:(I)V
         6: .line 1597
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         7: .line 1598
            return
        end local 2 // com.google.protobuf.ByteString value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    8     1  fieldNumber  I
            0    8     2        value  Lcom/google/protobuf/ByteString;
            3    4     3            e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeMessage(int, java.lang.Object);
    descriptor: (ILjava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // java.lang.Object value
         0: .line 1602
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.getTotalBytesWritten:()I
            istore 3 /* prevBytes */
        start local 3 // int prevBytes
         1: .line 1603
            invokestatic com.google.protobuf.Protobuf.getInstance:()Lcom/google/protobuf/Protobuf;
            aload 2 /* value */
            aload 0 /* this */
            invokevirtual com.google.protobuf.Protobuf.writeTo:(Ljava/lang/Object;Lcom/google/protobuf/Writer;)V
         2: .line 1604
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.getTotalBytesWritten:()I
            iload 3 /* prevBytes */
            isub
            istore 4 /* length */
        start local 4 // int length
         3: .line 1605
            aload 0 /* this */
            bipush 10
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         4: .line 1606
            aload 0 /* this */
            iload 4 /* length */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32:(I)V
         5: .line 1607
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         6: .line 1608
            return
        end local 4 // int length
        end local 3 // int prevBytes
        end local 2 // java.lang.Object value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    7     1  fieldNumber  I
            0    7     2        value  Ljava/lang/Object;
            1    7     3    prevBytes  I
            3    7     4       length  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeMessage(int, java.lang.Object, com.google.protobuf.Schema);
    descriptor: (ILjava/lang/Object;Lcom/google/protobuf/Schema;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // java.lang.Object value
        start local 3 // com.google.protobuf.Schema schema
         0: .line 1612
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.getTotalBytesWritten:()I
            istore 4 /* prevBytes */
        start local 4 // int prevBytes
         1: .line 1613
            aload 3 /* schema */
            aload 2 /* value */
            aload 0 /* this */
            invokeinterface com.google.protobuf.Schema.writeTo:(Ljava/lang/Object;Lcom/google/protobuf/Writer;)V
         2: .line 1614
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.getTotalBytesWritten:()I
            iload 4 /* prevBytes */
            isub
            istore 5 /* length */
        start local 5 // int length
         3: .line 1615
            aload 0 /* this */
            bipush 10
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         4: .line 1616
            aload 0 /* this */
            iload 5 /* length */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32:(I)V
         5: .line 1617
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         6: .line 1618
            return
        end local 5 // int length
        end local 4 // int prevBytes
        end local 3 // com.google.protobuf.Schema schema
        end local 2 // java.lang.Object value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    7     1  fieldNumber  I
            0    7     2        value  Ljava/lang/Object;
            0    7     3       schema  Lcom/google/protobuf/Schema;
            1    7     4    prevBytes  I
            3    7     5       length  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        
      schema       

  public void writeGroup(int, java.lang.Object);
    descriptor: (ILjava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // java.lang.Object value
         0: .line 1622
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_4
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         1: .line 1623
            invokestatic com.google.protobuf.Protobuf.getInstance:()Lcom/google/protobuf/Protobuf;
            aload 2 /* value */
            aload 0 /* this */
            invokevirtual com.google.protobuf.Protobuf.writeTo:(Ljava/lang/Object;Lcom/google/protobuf/Writer;)V
         2: .line 1624
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_3
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1625
            return
        end local 2 // java.lang.Object value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  Ljava/lang/Object;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        

  public void writeGroup(int, java.lang.Object, com.google.protobuf.Schema);
    descriptor: (ILjava/lang/Object;Lcom/google/protobuf/Schema;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // java.lang.Object value
        start local 3 // com.google.protobuf.Schema schema
         0: .line 1629
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_4
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         1: .line 1630
            aload 3 /* schema */
            aload 2 /* value */
            aload 0 /* this */
            invokeinterface com.google.protobuf.Schema.writeTo:(Ljava/lang/Object;Lcom/google/protobuf/Writer;)V
         2: .line 1631
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_3
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         3: .line 1632
            return
        end local 3 // com.google.protobuf.Schema schema
        end local 2 // java.lang.Object value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  fieldNumber  I
            0    4     2        value  Ljava/lang/Object;
            0    4     3       schema  Lcom/google/protobuf/Schema;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  
      value        
      schema       

  public void writeStartGroup(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
         0: .line 1636
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_3
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         1: .line 1637
            return
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  fieldNumber  I
    MethodParameters:
             Name  Flags
      fieldNumber  

  public void writeEndGroup(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
         0: .line 1641
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_4
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeTag:(II)V
         1: .line 1642
            return
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  fieldNumber  I
    MethodParameters:
             Name  Flags
      fieldNumber  

  void writeInt32(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1646
            iload 1 /* value */
            iflt 3
         1: .line 1647
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32:(I)V
         2: .line 1648
            goto 4
         3: .line 1649
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* value */
            i2l
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64:(J)V
         4: .line 1651
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    5     1  value  I
    MethodParameters:
       Name  Flags
      value  

  void writeSInt32(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1655
            aload 0 /* this */
            iload 1 /* value */
            invokestatic com.google.protobuf.CodedOutputStream.encodeZigZag32:(I)I
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32:(I)V
         1: .line 1656
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  value  I
    MethodParameters:
       Name  Flags
      value  

  void writeSInt64(long);
    descriptor: (J)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1660
            aload 0 /* this */
            lload 1 /* value */
            invokestatic com.google.protobuf.CodedOutputStream.encodeZigZag64:(J)J
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64:(J)V
         1: .line 1661
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  value  J
    MethodParameters:
       Name  Flags
      value  

  void writeBool(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // boolean value
         0: .line 1665
            aload 0 /* this */
            iload 1 /* value */
            ifeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack: com.google.protobuf.BinaryWriter$UnsafeHeapWriter
         1: iconst_0
      StackMap locals: com.google.protobuf.BinaryWriter$UnsafeHeapWriter int
      StackMap stack: com.google.protobuf.BinaryWriter$UnsafeHeapWriter int
         2: i2b
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.write:(B)V
         3: .line 1666
            return
        end local 1 // boolean value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  value  Z
    MethodParameters:
       Name  Flags
      value  

  void writeTag(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int fieldNumber
        start local 2 // int wireType
         0: .line 1670
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iload 2 /* wireType */
            invokestatic com.google.protobuf.WireFormat.makeTag:(II)I
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32:(I)V
         1: .line 1671
            return
        end local 2 // int wireType
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  fieldNumber  I
            0    2     2     wireType  I
    MethodParameters:
             Name  Flags
      fieldNumber  
      wireType     

  void writeVarint32(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1675
            iload 1 /* value */
            bipush -128
            iand
            ifne 3
         1: .line 1676
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32OneByte:(I)V
         2: .line 1677
            goto 13
      StackMap locals:
      StackMap stack:
         3: iload 1 /* value */
            sipush -16384
            iand
            ifne 6
         4: .line 1678
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32TwoBytes:(I)V
         5: .line 1679
            goto 13
      StackMap locals:
      StackMap stack:
         6: iload 1 /* value */
            ldc -2097152
            iand
            ifne 9
         7: .line 1680
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32ThreeBytes:(I)V
         8: .line 1681
            goto 13
      StackMap locals:
      StackMap stack:
         9: iload 1 /* value */
            ldc -268435456
            iand
            ifne 12
        10: .line 1682
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32FourBytes:(I)V
        11: .line 1683
            goto 13
        12: .line 1684
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint32FiveBytes:(I)V
        13: .line 1686
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   14     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0   14     1  value  I
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint32OneByte(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1689
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1690
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  value  I
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint32TwoBytes(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1693
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 7
            iushr
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1694
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1695
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    3     1  value  I
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint32ThreeBytes(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1698
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 14
            iushr
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1699
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 7
            iushr
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1700
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1701
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  value  I
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint32FourBytes(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1704
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 21
            iushr
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1705
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 14
            iushr
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1706
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 7
            iushr
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1707
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1708
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    5     1  value  I
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint32FiveBytes(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1711
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 28
            iushr
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1712
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 21
            iushr
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1713
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 14
            iushr
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1714
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 7
            iushr
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1715
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         5: .line 1716
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    6     1  value  I
    MethodParameters:
       Name  Flags
      value  

  void writeVarint64(long);
    descriptor: (J)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1720
            lload 1 /* value */
            invokestatic com.google.protobuf.BinaryWriter.computeUInt64SizeNoTag:(J)B
            tableswitch { // 1 - 10
                    1: 1
                    2: 3
                    3: 5
                    4: 7
                    5: 9
                    6: 11
                    7: 13
                    8: 15
                    9: 17
                   10: 19
              default: 20
          }
         1: .line 1722
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64OneByte:(J)V
         2: .line 1723
            goto 20
         3: .line 1725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64TwoBytes:(J)V
         4: .line 1726
            goto 20
         5: .line 1728
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64ThreeBytes:(J)V
         6: .line 1729
            goto 20
         7: .line 1731
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64FourBytes:(J)V
         8: .line 1732
            goto 20
         9: .line 1734
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64FiveBytes:(J)V
        10: .line 1735
            goto 20
        11: .line 1737
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64SixBytes:(J)V
        12: .line 1738
            goto 20
        13: .line 1740
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64SevenBytes:(J)V
        14: .line 1741
            goto 20
        15: .line 1743
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64EightBytes:(J)V
        16: .line 1744
            goto 20
        17: .line 1746
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64NineBytes:(J)V
        18: .line 1747
            goto 20
        19: .line 1749
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.writeVarint64TenBytes:(J)V
        20: .line 1752
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   21     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0   21     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64OneByte(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1755
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1756
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64TwoBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1759
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1760
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            l2i
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1761
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    3     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64ThreeBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1764
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            l2i
            bipush 14
            iushr
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1765
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1766
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1767
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    4     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64FourBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1770
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 21
            lushr
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1771
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 14
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1772
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1773
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1774
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    5     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64FiveBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1777
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 28
            lushr
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1778
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 21
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1779
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 14
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1780
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1781
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         5: .line 1782
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    6     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64SixBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1785
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 35
            lushr
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1786
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 28
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1787
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 21
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1788
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 14
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1789
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         5: .line 1790
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         6: .line 1791
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    7     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64SevenBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1794
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 42
            lushr
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1795
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 35
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1796
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 28
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1797
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 21
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1798
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 14
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         5: .line 1799
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         6: .line 1800
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         7: .line 1801
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    8     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64EightBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1804
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 49
            lushr
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1805
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 42
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1806
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 35
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1807
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 28
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1808
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 21
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         5: .line 1809
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 14
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         6: .line 1810
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         7: .line 1811
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         8: .line 1812
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    9     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64NineBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1815
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 56
            lushr
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1816
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 49
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1817
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 42
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1818
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 35
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1819
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 28
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         5: .line 1820
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 21
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         6: .line 1821
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 14
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         7: .line 1822
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         8: .line 1823
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         9: .line 1824
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0   10     1  value  J
    MethodParameters:
       Name  Flags
      value  

  private void writeVarint64TenBytes(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1827
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 63
            lushr
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1828
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 56
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1829
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 49
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1830
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 42
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1831
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 35
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         5: .line 1832
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 28
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         6: .line 1833
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 21
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         7: .line 1834
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 14
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         8: .line 1835
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 7
            lushr
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         9: .line 1836
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            ldc 127
            land
            ldc 128
            lor
            l2i
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        10: .line 1837
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0   11     1  value  J
    MethodParameters:
       Name  Flags
      value  

  void writeFixed32(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int value
         0: .line 1841
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 24
            ishr
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1842
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 16
            ishr
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1843
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            bipush 8
            ishr
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1844
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1845
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    5     1  value  I
    MethodParameters:
       Name  Flags
      value  

  void writeFixed64(long);
    descriptor: (J)V
    flags: (0x0000) 
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // long value
         0: .line 1849
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 56
            lshr
            l2i
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1850
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 48
            lshr
            l2i
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         2: .line 1851
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 40
            lshr
            l2i
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         3: .line 1852
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 32
            lshr
            l2i
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1853
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 24
            lshr
            l2i
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         5: .line 1854
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 16
            lshr
            l2i
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         6: .line 1855
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            bipush 8
            lshr
            l2i
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         7: .line 1856
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            lload 1 /* value */
            l2i
            sipush 255
            iand
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         8: .line 1857
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    9     1  value  J
    MethodParameters:
       Name  Flags
      value  

  void writeString(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=6, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // java.lang.String in
         0: .line 1862
            aload 0 /* this */
            aload 1 /* in */
            invokevirtual java.lang.String.length:()I
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         1: .line 1865
            aload 1 /* in */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 2 /* i */
        start local 2 // int i
         2: .line 1870
            goto 5
        start local 3 // char c
         3: .line 1871
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 3 /* c */
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         4: .line 1870
            iinc 2 /* i */ -1
        end local 3 // char c
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            iflt 7
            aload 1 /* in */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            dup
            istore 3 /* c */
        start local 3 // char c
         6: sipush 128
            if_icmplt 3
        end local 3 // char c
         7: .line 1873
      StackMap locals:
      StackMap stack:
            iload 2 /* i */
            iconst_m1
            if_icmpne 37
         8: .line 1875
            return
         9: .line 1878
      StackMap locals:
      StackMap stack:
            aload 1 /* in */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 3 /* c */
        start local 3 // char c
        10: .line 1879
            iload 3 /* c */
            sipush 128
            if_icmpge 13
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.offsetMinusOne:J
            lcmp
            ifle 13
        11: .line 1880
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 3 /* c */
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        12: .line 1881
            goto 36
      StackMap locals: int
      StackMap stack:
        13: iload 3 /* c */
            sipush 2048
            if_icmpge 17
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.offset:J
            lcmp
            ifle 17
        14: .line 1882
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 128
            bipush 63
            iload 3 /* c */
            iand
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        15: .line 1883
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 960
            iload 3 /* c */
            bipush 6
            iushr
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        16: .line 1884
            goto 36
      StackMap locals:
      StackMap stack:
        17: iload 3 /* c */
            ldc 55296
            if_icmplt 18
            ldc 57343
            iload 3 /* c */
            if_icmpge 23
        18: .line 1885
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.offset:J
            lconst_1
            ladd
            lcmp
            ifle 23
        19: .line 1887
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 128
            bipush 63
            iload 3 /* c */
            iand
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        20: .line 1888
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 128
            bipush 63
            iload 3 /* c */
            bipush 6
            iushr
            iand
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        21: .line 1889
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 480
            iload 3 /* c */
            bipush 12
            iushr
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        22: .line 1890
            goto 36
      StackMap locals:
      StackMap stack:
        23: aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.offset:J
            ldc 2
            ladd
            lcmp
            ifle 34
        24: .line 1894
            iload 2 /* i */
            ifeq 26
            aload 1 /* in */
            iload 2 /* i */
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            dup
            istore 4 /* high */
        start local 4 // char high
        25: iload 3 /* c */
            invokestatic java.lang.Character.isSurrogatePair:(CC)Z
            ifne 27
        end local 4 // char high
        26: .line 1895
      StackMap locals:
      StackMap stack:
            new com.google.protobuf.Utf8$UnpairedSurrogateException
            dup
            iload 2 /* i */
            iconst_1
            isub
            iload 2 /* i */
            invokespecial com.google.protobuf.Utf8$UnpairedSurrogateException.<init>:(II)V
            athrow
        start local 4 // char high
        27: .line 1897
      StackMap locals: int
      StackMap stack:
            iinc 2 /* i */ -1
        28: .line 1898
            iload 4 /* high */
            iload 3 /* c */
            invokestatic java.lang.Character.toCodePoint:(CC)I
            istore 5 /* codePoint */
        start local 5 // int codePoint
        29: .line 1899
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 128
            bipush 63
            iload 5 /* codePoint */
            iand
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        30: .line 1900
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 128
            bipush 63
            iload 5 /* codePoint */
            bipush 6
            iushr
            iand
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        31: .line 1901
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 128
            bipush 63
            iload 5 /* codePoint */
            bipush 12
            iushr
            iand
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        32: .line 1902
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            sipush 240
            iload 5 /* codePoint */
            bipush 18
            iushr
            ior
            i2b
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
        end local 5 // int codePoint
        end local 4 // char high
        33: .line 1903
            goto 36
        34: .line 1905
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* i */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
        35: .line 1906
            iinc 2 /* i */ 1
        36: .line 1877
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
        end local 3 // char c
      StackMap locals:
      StackMap stack:
        37: iload 2 /* i */
            ifge 9
        38: .line 1909
            return
        end local 2 // int i
        end local 1 // java.lang.String in
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   39     0       this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0   39     1         in  Ljava/lang/String;
            2   39     2          i  I
            3    5     3          c  C
            6    7     3          c  C
           10   37     3          c  C
           25   26     4       high  C
           27   33     4       high  C
           29   33     5  codePoint  I
    MethodParameters:
      Name  Flags
      in    

  public void write(byte);
    descriptor: (B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // byte value
         0: .line 1913
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            dup2_x1
            lconst_1
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 1 /* value */
            invokestatic com.google.protobuf.UnsafeUtil.putByte:([BJB)V
         1: .line 1914
            return
        end local 1 // byte value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    2     1  value  B
    MethodParameters:
       Name  Flags
      value  

  public void write(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // byte[] value
        start local 2 // int offset
        start local 3 // int length
         0: .line 1918
            iload 2 /* offset */
            iflt 1
            iload 2 /* offset */
            iload 3 /* length */
            iadd
            aload 1 /* value */
            arraylength
            if_icmple 4
         1: .line 1919
      StackMap locals:
      StackMap stack:
            new java.lang.ArrayIndexOutOfBoundsException
            dup
         2: .line 1920
            ldc "value.length=%d, offset=%d, length=%d"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* value */
            arraylength
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iload 2 /* offset */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iload 3 /* length */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
         3: .line 1919
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1922
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* length */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         5: .line 1924
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 3 /* length */
            i2l
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
         6: .line 1925
            aload 1 /* value */
            iload 2 /* offset */
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.arrayPos:()I
            iconst_1
            iadd
            iload 3 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         7: .line 1926
            return
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    8     1   value  [B
            0    8     2  offset  I
            0    8     3  length  I
    MethodParameters:
        Name  Flags
      value   
      offset  
      length  

  public void writeLazy(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // byte[] value
        start local 2 // int offset
        start local 3 // int length
         0: .line 1930
            iload 2 /* offset */
            iflt 1
            iload 2 /* offset */
            iload 3 /* length */
            iadd
            aload 1 /* value */
            arraylength
            if_icmple 4
         1: .line 1931
      StackMap locals:
      StackMap stack:
            new java.lang.ArrayIndexOutOfBoundsException
            dup
         2: .line 1932
            ldc "value.length=%d, offset=%d, length=%d"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* value */
            arraylength
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iload 2 /* offset */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            iload 3 /* length */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
         3: .line 1931
            invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1934
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.spaceLeft:()I
            iload 3 /* length */
            if_icmpge 9
         5: .line 1937
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.totalDoneBytes:I
            iload 3 /* length */
            iadd
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.totalDoneBytes:I
         6: .line 1938
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffers:Ljava/util/ArrayDeque;
            aload 1 /* value */
            iload 2 /* offset */
            iload 3 /* length */
            invokestatic com.google.protobuf.AllocatedBuffer.wrap:([BII)Lcom/google/protobuf/AllocatedBuffer;
            invokevirtual java.util.ArrayDeque.addFirst:(Ljava/lang/Object;)V
         7: .line 1942
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.nextBuffer:()V
         8: .line 1943
            return
         9: .line 1946
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 3 /* length */
            i2l
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
        10: .line 1947
            aload 1 /* value */
            iload 2 /* offset */
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.arrayPos:()I
            iconst_1
            iadd
            iload 3 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        11: .line 1948
            return
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0   12     1   value  [B
            0   12     2  offset  I
            0   12     3  length  I
    MethodParameters:
        Name  Flags
      value   
      offset  
      length  

  public void write(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // java.nio.ByteBuffer value
         0: .line 1952
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            istore 2 /* length */
        start local 2 // int length
         1: .line 1953
            aload 0 /* this */
            iload 2 /* length */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.requireSpace:(I)V
         2: .line 1955
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 2 /* length */
            i2l
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
         3: .line 1956
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.arrayPos:()I
            iconst_1
            iadd
            iload 2 /* length */
            invokevirtual java.nio.ByteBuffer.get:([BII)Ljava/nio/ByteBuffer;
            pop
         4: .line 1957
            return
        end local 2 // int length
        end local 1 // java.nio.ByteBuffer value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    5     1   value  Ljava/nio/ByteBuffer;
            1    5     2  length  I
    MethodParameters:
       Name  Flags
      value  

  public void writeLazy(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // java.nio.ByteBuffer value
         0: .line 1961
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            istore 2 /* length */
        start local 2 // int length
         1: .line 1962
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.spaceLeft:()I
            iload 2 /* length */
            if_icmpge 5
         2: .line 1965
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.totalDoneBytes:I
            iload 2 /* length */
            iadd
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.totalDoneBytes:I
         3: .line 1966
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffers:Ljava/util/ArrayDeque;
            aload 1 /* value */
            invokestatic com.google.protobuf.AllocatedBuffer.wrap:(Ljava/nio/ByteBuffer;)Lcom/google/protobuf/AllocatedBuffer;
            invokevirtual java.util.ArrayDeque.addFirst:(Ljava/lang/Object;)V
         4: .line 1970
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.nextBuffer:()V
         5: .line 1973
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
            iload 2 /* length */
            i2l
            lsub
            putfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.pos:J
         6: .line 1974
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.BinaryWriter$UnsafeHeapWriter.buffer:[B
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.arrayPos:()I
            iconst_1
            iadd
            iload 2 /* length */
            invokevirtual java.nio.ByteBuffer.get:([BII)Ljava/nio/ByteBuffer;
            pop
         7: .line 1975
            return
        end local 2 // int length
        end local 1 // java.nio.ByteBuffer value
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    8     1   value  Ljava/nio/ByteBuffer;
            1    8     2  length  I
    MethodParameters:
       Name  Flags
      value  

  void requireSpace(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
        start local 1 // int size
         0: .line 1979
            aload 0 /* this */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.spaceLeft:()I
            iload 1 /* size */
            if_icmpge 2
         1: .line 1980
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual com.google.protobuf.BinaryWriter$UnsafeHeapWriter.nextBuffer:(I)V
         2: .line 1982
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int size
        end local 0 // com.google.protobuf.BinaryWriter$UnsafeHeapWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/protobuf/BinaryWriter$UnsafeHeapWriter;
            0    3     1  size  I
    MethodParameters:
      Name  Flags
      size  
}
SourceFile: "BinaryWriter.java"
NestHost: com.google.protobuf.BinaryWriter
InnerClasses:
  private final UnsafeHeapWriter = com.google.protobuf.BinaryWriter$UnsafeHeapWriter of com.google.protobuf.BinaryWriter
  UnpairedSurrogateException = com.google.protobuf.Utf8$UnpairedSurrogateException of com.google.protobuf.Utf8