final class com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder extends com.google.protobuf.CodedOutputStream
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder
  super_class: com.google.protobuf.CodedOutputStream
{
  private final java.nio.ByteBuffer originalBuffer;
    descriptor: Ljava/nio/ByteBuffer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.nio.ByteBuffer buffer;
    descriptor: Ljava/nio/ByteBuffer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  void <init>(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // java.nio.ByteBuffer buffer
         0: .line 1559
            aload 0 /* this */
            invokespecial com.google.protobuf.CodedOutputStream.<init>:()V
         1: .line 1560
            aload 0 /* this */
            aload 1 /* buffer */
            putfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.originalBuffer:Ljava/nio/ByteBuffer;
         2: .line 1561
            aload 0 /* this */
            aload 1 /* buffer */
            invokevirtual java.nio.ByteBuffer.duplicate:()Ljava/nio/ByteBuffer;
            getstatic java.nio.ByteOrder.LITTLE_ENDIAN:Ljava/nio/ByteOrder;
            invokevirtual java.nio.ByteBuffer.order:(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer;
            putfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
         3: .line 1562
            aload 0 /* this */
            aload 1 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            putfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.initialPosition:I
         4: .line 1563
            return
        end local 1 // java.nio.ByteBuffer buffer
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  buffer  Ljava/nio/ByteBuffer;
    MethodParameters:
        Name  Flags
      buffer  

  public void writeTag(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // int wireType
         0: .line 1567
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iload 2 /* wireType */
            invokestatic com.google.protobuf.WireFormat.makeTag:(II)I
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
         1: .line 1568
            return
        end local 2 // int wireType
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    2     1  fieldNumber  I
            0    2     2     wireType  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      wireType     final

  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.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 1572
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1573
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeInt32NoTag:(I)V
         2: .line 1574
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  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.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 1578
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1579
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
         2: .line 1580
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  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.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 1584
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_5
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1585
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeFixed32NoTag:(I)V
         2: .line 1586
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  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.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // long value
         0: .line 1590
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1591
            aload 0 /* this */
            lload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt64NoTag:(J)V
         2: .line 1592
            return
        end local 2 // long value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  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.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // long value
         0: .line 1596
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_1
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1597
            aload 0 /* this */
            lload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeFixed64NoTag:(J)V
         2: .line 1598
            return
        end local 2 // long value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  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.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // boolean value
         0: .line 1602
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1603
            aload 0 /* this */
            iload 2 /* value */
            ifeq 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack: com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder
         2: iconst_0
      StackMap locals: com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder int int
      StackMap stack: com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder int
         3: i2b
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.write:(B)V
         4: .line 1604
            return
        end local 2 // boolean value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  fieldNumber  I
            0    5     2        value  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  public void writeString(int, java.lang.String);
    descriptor: (ILjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // java.lang.String value
         0: .line 1608
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1609
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeStringNoTag:(Ljava/lang/String;)V
         2: .line 1610
            return
        end local 2 // java.lang.String value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  public void writeBytes(int, com.google.protobuf.ByteString);
    descriptor: (ILcom/google/protobuf/ByteString;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.ByteString value
         0: .line 1614
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1615
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeBytesNoTag:(Lcom/google/protobuf/ByteString;)V
         2: .line 1616
            return
        end local 2 // com.google.protobuf.ByteString value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  Lcom/google/protobuf/ByteString;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  public void writeByteArray(int, byte[]);
    descriptor: (I[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // byte[] value
         0: .line 1620
            aload 0 /* this */
            iload 1 /* fieldNumber */
            aload 2 /* value */
            iconst_0
            aload 2 /* value */
            arraylength
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeByteArray:(I[BII)V
         1: .line 1621
            return
        end local 2 // byte[] value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    2     1  fieldNumber  I
            0    2     2        value  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  public void writeByteArray(int, byte[], int, int);
    descriptor: (I[BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // byte[] value
        start local 3 // int offset
        start local 4 // int length
         0: .line 1627
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1628
            aload 0 /* this */
            aload 2 /* value */
            iload 3 /* offset */
            iload 4 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeByteArrayNoTag:([BII)V
         2: .line 1629
            return
        end local 4 // int length
        end local 3 // int offset
        end local 2 // byte[] value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  [B
            0    3     3       offset  I
            0    3     4       length  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final
      offset       final
      length       final

  public void writeByteBuffer(int, java.nio.ByteBuffer);
    descriptor: (ILjava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // java.nio.ByteBuffer value
         0: .line 1633
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1634
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual java.nio.ByteBuffer.capacity:()I
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
         2: .line 1635
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeRawBytes:(Ljava/nio/ByteBuffer;)V
         3: .line 1636
            return
        end local 2 // java.nio.ByteBuffer value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    4     1  fieldNumber  I
            0    4     2        value  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  public void writeMessage(int, com.google.protobuf.MessageLite);
    descriptor: (ILcom/google/protobuf/MessageLite;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.MessageLite value
         0: .line 1640
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1641
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeMessageNoTag:(Lcom/google/protobuf/MessageLite;)V
         2: .line 1642
            return
        end local 2 // com.google.protobuf.MessageLite value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  Lcom/google/protobuf/MessageLite;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  void writeMessage(int, com.google.protobuf.MessageLite, com.google.protobuf.Schema);
    descriptor: (ILcom/google/protobuf/MessageLite;Lcom/google/protobuf/Schema;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.MessageLite value
        start local 3 // com.google.protobuf.Schema schema
         0: .line 1647
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1648
            aload 0 /* this */
            aload 2 /* value */
            aload 3 /* schema */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeMessageNoTag:(Lcom/google/protobuf/MessageLite;Lcom/google/protobuf/Schema;)V
         2: .line 1649
            return
        end local 3 // com.google.protobuf.Schema schema
        end local 2 // com.google.protobuf.MessageLite value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  fieldNumber  I
            0    3     2        value  Lcom/google/protobuf/MessageLite;
            0    3     3       schema  Lcom/google/protobuf/Schema;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final
      schema       

  public void writeMessageSetExtension(int, com.google.protobuf.MessageLite);
    descriptor: (ILcom/google/protobuf/MessageLite;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.MessageLite value
         0: .line 1654
            aload 0 /* this */
            iconst_1
            iconst_3
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1655
            aload 0 /* this */
            iconst_2
            iload 1 /* fieldNumber */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32:(II)V
         2: .line 1656
            aload 0 /* this */
            iconst_3
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeMessage:(ILcom/google/protobuf/MessageLite;)V
         3: .line 1657
            aload 0 /* this */
            iconst_1
            iconst_4
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         4: .line 1658
            return
        end local 2 // com.google.protobuf.MessageLite value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  fieldNumber  I
            0    5     2        value  Lcom/google/protobuf/MessageLite;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  public void writeRawMessageSetExtension(int, com.google.protobuf.ByteString);
    descriptor: (ILcom/google/protobuf/ByteString;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.ByteString value
         0: .line 1663
            aload 0 /* this */
            iconst_1
            iconst_3
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         1: .line 1664
            aload 0 /* this */
            iconst_2
            iload 1 /* fieldNumber */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32:(II)V
         2: .line 1665
            aload 0 /* this */
            iconst_3
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeBytes:(ILcom/google/protobuf/ByteString;)V
         3: .line 1666
            aload 0 /* this */
            iconst_1
            iconst_4
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeTag:(II)V
         4: .line 1667
            return
        end local 2 // com.google.protobuf.ByteString value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  fieldNumber  I
            0    5     2        value  Lcom/google/protobuf/ByteString;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      fieldNumber  final
      value        final

  public void writeMessageNoTag(com.google.protobuf.MessageLite);
    descriptor: (Lcom/google/protobuf/MessageLite;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // com.google.protobuf.MessageLite value
         0: .line 1671
            aload 0 /* this */
            aload 1 /* value */
            invokeinterface com.google.protobuf.MessageLite.getSerializedSize:()I
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
         1: .line 1672
            aload 1 /* value */
            aload 0 /* this */
            invokeinterface com.google.protobuf.MessageLite.writeTo:(Lcom/google/protobuf/CodedOutputStream;)V
         2: .line 1673
            return
        end local 1 // com.google.protobuf.MessageLite value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  value  Lcom/google/protobuf/MessageLite;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  final

  void writeMessageNoTag(com.google.protobuf.MessageLite, com.google.protobuf.Schema);
    descriptor: (Lcom/google/protobuf/MessageLite;Lcom/google/protobuf/Schema;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // com.google.protobuf.MessageLite value
        start local 2 // com.google.protobuf.Schema schema
         0: .line 1677
            aload 0 /* this */
            aload 1 /* value */
            checkcast com.google.protobuf.AbstractMessageLite
            aload 2 /* schema */
            invokevirtual com.google.protobuf.AbstractMessageLite.getSerializedSize:(Lcom/google/protobuf/Schema;)I
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
         1: .line 1678
            aload 2 /* schema */
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.wrapper:Lcom/google/protobuf/CodedOutputStreamWriter;
            invokeinterface com.google.protobuf.Schema.writeTo:(Ljava/lang/Object;Lcom/google/protobuf/Writer;)V
         2: .line 1679
            return
        end local 2 // com.google.protobuf.Schema schema
        end local 1 // com.google.protobuf.MessageLite value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1   value  Lcom/google/protobuf/MessageLite;
            0    3     2  schema  Lcom/google/protobuf/Schema;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      value   final
      schema  

  public void write(byte);
    descriptor: (B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // byte value
         0: .line 1684
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            iload 1 /* value */
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         1: .line 1685
            goto 4
      StackMap locals:
      StackMap stack: java.nio.BufferOverflowException
         2: astore 2 /* e */
        start local 2 // java.nio.BufferOverflowException e
         3: .line 1686
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 2 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.nio.BufferOverflowException e
         4: .line 1688
      StackMap locals:
      StackMap stack:
            return
        end local 1 // byte value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  value  B
            3    4     2      e  Ljava/nio/BufferOverflowException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.nio.BufferOverflowException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeBytesNoTag(com.google.protobuf.ByteString);
    descriptor: (Lcom/google/protobuf/ByteString;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // com.google.protobuf.ByteString value
         0: .line 1692
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual com.google.protobuf.ByteString.size:()I
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
         1: .line 1693
            aload 1 /* value */
            aload 0 /* this */
            invokevirtual com.google.protobuf.ByteString.writeTo:(Lcom/google/protobuf/ByteOutput;)V
         2: .line 1694
            return
        end local 1 // com.google.protobuf.ByteString value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1  value  Lcom/google/protobuf/ByteString;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  final

  public void writeByteArrayNoTag(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // byte[] value
        start local 2 // int offset
        start local 3 // int length
         0: .line 1698
            aload 0 /* this */
            iload 3 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
         1: .line 1699
            aload 0 /* this */
            aload 1 /* value */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.write:([BII)V
         2: .line 1700
            return
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    3     1   value  [B
            0    3     2  offset  I
            0    3     3  length  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      value   final
      offset  
      length  

  public void writeRawBytes(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // java.nio.ByteBuffer value
         0: .line 1704
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 3
         1: .line 1705
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.array:()[B
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.capacity:()I
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.write:([BII)V
         2: .line 1706
            goto 6
         3: .line 1707
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.duplicate:()Ljava/nio/ByteBuffer;
            astore 2 /* duplicated */
        start local 2 // java.nio.ByteBuffer duplicated
         4: .line 1708
            aload 2 /* duplicated */
            invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/Buffer;
            pop
         5: .line 1709
            aload 0 /* this */
            aload 2 /* duplicated */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.write:(Ljava/nio/ByteBuffer;)V
        end local 2 // java.nio.ByteBuffer duplicated
         6: .line 1711
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.nio.ByteBuffer value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    7     1       value  Ljava/nio/ByteBuffer;
            4    6     2  duplicated  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  final

  public void writeInt32NoTag(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int value
         0: .line 1715
            iload 1 /* value */
            iflt 3
         1: .line 1716
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
         2: .line 1717
            goto 4
         3: .line 1719
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* value */
            i2l
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt64NoTag:(J)V
         4: .line 1721
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  value  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeUInt32NoTag(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int value
         0: .line 1727
      StackMap locals:
      StackMap stack:
            iload 1 /* value */
            bipush -128
            iand
            ifne 3
         1: .line 1728
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            iload 1 /* value */
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         2: .line 1729
            return
         3: .line 1731
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            iload 1 /* value */
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         4: .line 1732
            iload 1 /* value */
            bipush 7
            iushr
            istore 1 /* value */
         5: .line 1726
            goto 0
         6: .line 1735
      StackMap locals:
      StackMap stack: java.nio.BufferOverflowException
            astore 2 /* e */
        start local 2 // java.nio.BufferOverflowException e
         7: .line 1736
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 2 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.nio.BufferOverflowException e
        end local 1 // int value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    8     1  value  I
            7    8     2      e  Ljava/nio/BufferOverflowException;
      Exception table:
        from    to  target  type
           0     2       6  Class java.nio.BufferOverflowException
           3     6       6  Class java.nio.BufferOverflowException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeFixed32NoTag(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // int value
         0: .line 1743
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            iload 1 /* value */
            invokevirtual java.nio.ByteBuffer.putInt:(I)Ljava/nio/ByteBuffer;
            pop
         1: .line 1744
            goto 4
      StackMap locals:
      StackMap stack: java.nio.BufferOverflowException
         2: astore 2 /* e */
        start local 2 // java.nio.BufferOverflowException e
         3: .line 1745
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 2 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.nio.BufferOverflowException e
         4: .line 1747
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  value  I
            3    4     2      e  Ljava/nio/BufferOverflowException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.nio.BufferOverflowException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeUInt64NoTag(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // long value
         0: .line 1753
      StackMap locals:
      StackMap stack:
            lload 1 /* value */
            ldc -128
            land
            lconst_0
            lcmp
            ifne 3
         1: .line 1754
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            lload 1 /* value */
            l2i
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         2: .line 1755
            return
         3: .line 1757
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            lload 1 /* value */
            l2i
            bipush 127
            iand
            sipush 128
            ior
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         4: .line 1758
            lload 1 /* value */
            bipush 7
            lushr
            lstore 1 /* value */
         5: .line 1752
            goto 0
         6: .line 1761
      StackMap locals:
      StackMap stack: java.nio.BufferOverflowException
            astore 3 /* e */
        start local 3 // java.nio.BufferOverflowException e
         7: .line 1762
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 3 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.nio.BufferOverflowException e
        end local 1 // long value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    8     1  value  J
            7    8     3      e  Ljava/nio/BufferOverflowException;
      Exception table:
        from    to  target  type
           0     2       6  Class java.nio.BufferOverflowException
           3     6       6  Class java.nio.BufferOverflowException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeFixed64NoTag(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // long value
         0: .line 1769
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            lload 1 /* value */
            invokevirtual java.nio.ByteBuffer.putLong:(J)Ljava/nio/ByteBuffer;
            pop
         1: .line 1770
            goto 4
      StackMap locals:
      StackMap stack: java.nio.BufferOverflowException
         2: astore 3 /* e */
        start local 3 // java.nio.BufferOverflowException e
         3: .line 1771
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 3 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.nio.BufferOverflowException e
         4: .line 1773
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  value  J
            3    4     3      e  Ljava/nio/BufferOverflowException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.nio.BufferOverflowException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void write(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // byte[] value
        start local 2 // int offset
        start local 3 // int length
         0: .line 1778
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            aload 1 /* value */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual java.nio.ByteBuffer.put:([BII)Ljava/nio/ByteBuffer;
            pop
         1: .line 1779
            goto 6
      StackMap locals:
      StackMap stack: java.lang.IndexOutOfBoundsException
         2: astore 4 /* e */
        start local 4 // java.lang.IndexOutOfBoundsException e
         3: .line 1780
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 4 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.lang.IndexOutOfBoundsException e
         4: .line 1781
      StackMap locals:
      StackMap stack: java.nio.BufferOverflowException
            astore 4 /* e */
        start local 4 // java.nio.BufferOverflowException e
         5: .line 1782
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 4 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.nio.BufferOverflowException e
         6: .line 1784
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    7     1   value  [B
            0    7     2  offset  I
            0    7     3  length  I
            3    4     4       e  Ljava/lang/IndexOutOfBoundsException;
            5    6     4       e  Ljava/nio/BufferOverflowException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.IndexOutOfBoundsException
           0     1       4  Class java.nio.BufferOverflowException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      value   
      offset  
      length  

  public void writeLazy(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // byte[] value
        start local 2 // int offset
        start local 3 // int length
         0: .line 1788
            aload 0 /* this */
            aload 1 /* value */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.write:([BII)V
         1: .line 1789
            return
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    2     1   value  [B
            0    2     2  offset  I
            0    2     3  length  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      value   
      offset  
      length  

  public void write(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // java.nio.ByteBuffer value
         0: .line 1794
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
         1: .line 1795
            goto 4
      StackMap locals:
      StackMap stack: java.nio.BufferOverflowException
         2: astore 2 /* e */
        start local 2 // java.nio.BufferOverflowException e
         3: .line 1796
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 2 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.nio.BufferOverflowException e
         4: .line 1798
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.nio.ByteBuffer value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  value  Ljava/nio/ByteBuffer;
            3    4     2      e  Ljava/nio/BufferOverflowException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.nio.BufferOverflowException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeLazy(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // java.nio.ByteBuffer value
         0: .line 1802
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.write:(Ljava/nio/ByteBuffer;)V
         1: .line 1803
            return
        end local 1 // java.nio.ByteBuffer value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    2     1  value  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeStringNoTag(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // java.lang.String value
         0: .line 1807
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 2 /* startPos */
        start local 2 // int startPos
         1: .line 1811
            aload 1 /* value */
            invokevirtual java.lang.String.length:()I
            iconst_3
            imul
            istore 3 /* maxEncodedSize */
        start local 3 // int maxEncodedSize
         2: .line 1812
            iload 3 /* maxEncodedSize */
            invokestatic com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.computeUInt32SizeNoTag:(I)I
            istore 4 /* maxLengthVarIntSize */
        start local 4 // int maxLengthVarIntSize
         3: .line 1813
            aload 1 /* value */
            invokevirtual java.lang.String.length:()I
            invokestatic com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.computeUInt32SizeNoTag:(I)I
            istore 5 /* minLengthVarIntSize */
        start local 5 // int minLengthVarIntSize
         4: .line 1814
            iload 5 /* minLengthVarIntSize */
            iload 4 /* maxLengthVarIntSize */
            if_icmpne 13
         5: .line 1817
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.position:()I
            iload 5 /* minLengthVarIntSize */
            iadd
            istore 6 /* startOfBytes */
        start local 6 // int startOfBytes
         6: .line 1818
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            iload 6 /* startOfBytes */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
         7: .line 1821
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.encode:(Ljava/lang/String;)V
         8: .line 1824
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 7 /* endOfBytes */
        start local 7 // int endOfBytes
         9: .line 1825
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            iload 2 /* startPos */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        10: .line 1826
            aload 0 /* this */
            iload 7 /* endOfBytes */
            iload 6 /* startOfBytes */
            isub
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
        11: .line 1829
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            iload 7 /* endOfBytes */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        end local 7 // int endOfBytes
        end local 6 // int startOfBytes
        12: .line 1830
            goto 23
        13: .line 1831
      StackMap locals: com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder java.lang.String int int int int
      StackMap stack:
            aload 1 /* value */
            invokestatic com.google.protobuf.Utf8.encodedLength:(Ljava/lang/CharSequence;)I
            istore 6 /* length */
        start local 6 // int length
        14: .line 1832
            aload 0 /* this */
            iload 6 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.writeUInt32NoTag:(I)V
        15: .line 1833
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.encode:(Ljava/lang/String;)V
        end local 6 // int length
        end local 5 // int minLengthVarIntSize
        end local 4 // int maxLengthVarIntSize
        end local 3 // int maxEncodedSize
        16: .line 1835
            goto 23
      StackMap locals: com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder java.lang.String int
      StackMap stack: com.google.protobuf.Utf8$UnpairedSurrogateException
        17: astore 3 /* e */
        start local 3 // com.google.protobuf.Utf8$UnpairedSurrogateException e
        18: .line 1837
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            iload 2 /* startPos */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
        19: .line 1840
            aload 0 /* this */
            aload 1 /* value */
            aload 3 /* e */
            invokevirtual com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.inefficientWriteStringNoTag:(Ljava/lang/String;Lcom/google/protobuf/Utf8$UnpairedSurrogateException;)V
        end local 3 // com.google.protobuf.Utf8$UnpairedSurrogateException e
        20: goto 23
        21: .line 1841
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            astore 3 /* e */
        start local 3 // java.lang.IllegalArgumentException e
        22: .line 1843
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 3 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.IllegalArgumentException e
        23: .line 1845
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int startPos
        end local 1 // java.lang.String value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   24     0                 this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0   24     1                value  Ljava/lang/String;
            1   24     2             startPos  I
            2   16     3       maxEncodedSize  I
            3   16     4  maxLengthVarIntSize  I
            4   16     5  minLengthVarIntSize  I
            6   12     6         startOfBytes  I
            9   12     7           endOfBytes  I
           14   16     6               length  I
           18   20     3                    e  Lcom/google/protobuf/Utf8$UnpairedSurrogateException;
           22   23     3                    e  Ljava/lang/IllegalArgumentException;
      Exception table:
        from    to  target  type
           1    16      17  Class com.google.protobuf.Utf8$UnpairedSurrogateException
           1    16      21  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void flush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
         0: .line 1850
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.originalBuffer:Ljava/nio/ByteBuffer;
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.position:()I
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
         1: .line 1851
            return
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;

  public int spaceLeft();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
         0: .line 1855
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.remaining:()I
            ireturn
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;

  public int getTotalBytesWritten();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
         0: .line 1860
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.position:()I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.initialPosition:I
            isub
            ireturn
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;

  private void encode(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
        start local 1 // java.lang.String value
         0: .line 1865
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder.buffer:Ljava/nio/ByteBuffer;
            invokestatic com.google.protobuf.Utf8.encodeUtf8:(Ljava/lang/CharSequence;Ljava/nio/ByteBuffer;)V
         1: .line 1866
            goto 4
      StackMap locals:
      StackMap stack: java.lang.IndexOutOfBoundsException
         2: astore 2 /* e */
        start local 2 // java.lang.IndexOutOfBoundsException e
         3: .line 1867
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 2 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.IndexOutOfBoundsException e
         4: .line 1869
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String value
        end local 0 // com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/CodedOutputStream$SafeDirectNioEncoder;
            0    5     1  value  Ljava/lang/String;
            3    4     2      e  Ljava/lang/IndexOutOfBoundsException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.IndexOutOfBoundsException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  
}
SourceFile: "CodedOutputStream.java"
NestHost: com.google.protobuf.CodedOutputStream
InnerClasses:
  public OutOfSpaceException = com.google.protobuf.CodedOutputStream$OutOfSpaceException of com.google.protobuf.CodedOutputStream
  private final SafeDirectNioEncoder = com.google.protobuf.CodedOutputStream$SafeDirectNioEncoder of com.google.protobuf.CodedOutputStream
  UnpairedSurrogateException = com.google.protobuf.Utf8$UnpairedSurrogateException of com.google.protobuf.Utf8