final class com.google.protobuf.CodedOutputStream$OutputStreamEncoder extends com.google.protobuf.CodedOutputStream$AbstractBufferedEncoder
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.google.protobuf.CodedOutputStream$OutputStreamEncoder
  super_class: com.google.protobuf.CodedOutputStream$AbstractBufferedEncoder
{
  private final java.io.OutputStream out;
    descriptor: Ljava/io/OutputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(java.io.OutputStream, int);
    descriptor: (Ljava/io/OutputStream;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // java.io.OutputStream out
        start local 2 // int bufferSize
         0: .line 2712
            aload 0 /* this */
            iload 2 /* bufferSize */
            invokespecial com.google.protobuf.CodedOutputStream$AbstractBufferedEncoder.<init>:(I)V
         1: .line 2713
            aload 1 /* out */
            ifnonnull 3
         2: .line 2714
            new java.lang.NullPointerException
            dup
            ldc "out"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 2716
      StackMap locals: com.google.protobuf.CodedOutputStream$OutputStreamEncoder java.io.OutputStream int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* out */
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.out:Ljava/io/OutputStream;
         4: .line 2717
            return
        end local 2 // int bufferSize
        end local 1 // java.io.OutputStream out
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    5     1         out  Ljava/io/OutputStream;
            0    5     2  bufferSize  I
    MethodParameters:
            Name  Flags
      out         
      bufferSize  

  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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // int wireType
         0: .line 2721
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iload 2 /* wireType */
            invokestatic com.google.protobuf.WireFormat.makeTag:(II)I
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32NoTag:(I)V
         1: .line 2722
            return
        end local 2 // int wireType
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 2726
            aload 0 /* this */
            bipush 20
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2727
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferTag:(II)V
         2: .line 2728
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferInt32NoTag:(I)V
         3: .line 2729
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    4     1  fieldNumber  I
            0    4     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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 2733
            aload 0 /* this */
            bipush 20
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2734
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferTag:(II)V
         2: .line 2735
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferUInt32NoTag:(I)V
         3: .line 2736
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    4     1  fieldNumber  I
            0    4     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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // int value
         0: .line 2740
            aload 0 /* this */
            bipush 14
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2741
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_5
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferTag:(II)V
         2: .line 2742
            aload 0 /* this */
            iload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferFixed32NoTag:(I)V
         3: .line 2743
            return
        end local 2 // int value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    4     1  fieldNumber  I
            0    4     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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // long value
         0: .line 2747
            aload 0 /* this */
            bipush 20
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2748
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferTag:(II)V
         2: .line 2749
            aload 0 /* this */
            lload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferUInt64NoTag:(J)V
         3: .line 2750
            return
        end local 2 // long value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    4     1  fieldNumber  I
            0    4     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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // long value
         0: .line 2754
            aload 0 /* this */
            bipush 18
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2755
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_1
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferTag:(II)V
         2: .line 2756
            aload 0 /* this */
            lload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferFixed64NoTag:(J)V
         3: .line 2757
            return
        end local 2 // long value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    4     1  fieldNumber  I
            0    4     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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // boolean value
         0: .line 2761
            aload 0 /* this */
            bipush 11
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2762
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_0
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferTag:(II)V
         2: .line 2763
            aload 0 /* this */
            iload 2 /* value */
            ifeq 3
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack: com.google.protobuf.CodedOutputStream$OutputStreamEncoder
         3: iconst_0
      StackMap locals: com.google.protobuf.CodedOutputStream$OutputStreamEncoder int int
      StackMap stack: com.google.protobuf.CodedOutputStream$OutputStreamEncoder int
         4: i2b
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:(B)V
         5: .line 2764
            return
        end local 2 // boolean value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    6     1  fieldNumber  I
            0    6     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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // java.lang.String value
         0: .line 2768
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         1: .line 2769
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeStringNoTag:(Ljava/lang/String;)V
         2: .line 2770
            return
        end local 2 // java.lang.String value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.ByteString value
         0: .line 2774
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         1: .line 2775
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeBytesNoTag:(Lcom/google/protobuf/ByteString;)V
         2: .line 2776
            return
        end local 2 // com.google.protobuf.ByteString value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // byte[] value
         0: .line 2780
            aload 0 /* this */
            iload 1 /* fieldNumber */
            aload 2 /* value */
            iconst_0
            aload 2 /* value */
            arraylength
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeByteArray:(I[BII)V
         1: .line 2781
            return
        end local 2 // byte[] value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // byte[] value
        start local 3 // int offset
        start local 4 // int length
         0: .line 2787
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         1: .line 2788
            aload 0 /* this */
            aload 2 /* value */
            iload 3 /* offset */
            iload 4 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeByteArrayNoTag:([BII)V
         2: .line 2789
            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$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // java.nio.ByteBuffer value
         0: .line 2793
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         1: .line 2794
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual java.nio.ByteBuffer.capacity:()I
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32NoTag:(I)V
         2: .line 2795
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeRawBytes:(Ljava/nio/ByteBuffer;)V
         3: .line 2796
            return
        end local 2 // java.nio.ByteBuffer value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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 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$OutputStreamEncoder this
        start local 1 // com.google.protobuf.ByteString value
         0: .line 2800
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual com.google.protobuf.ByteString.size:()I
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32NoTag:(I)V
         1: .line 2801
            aload 1 /* value */
            aload 0 /* this */
            invokevirtual com.google.protobuf.ByteString.writeTo:(Lcom/google/protobuf/ByteOutput;)V
         2: .line 2802
            return
        end local 1 // com.google.protobuf.ByteString value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // byte[] value
        start local 2 // int offset
        start local 3 // int length
         0: .line 2806
            aload 0 /* this */
            iload 3 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32NoTag:(I)V
         1: .line 2807
            aload 0 /* this */
            aload 1 /* value */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.write:([BII)V
         2: .line 2808
            return
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // java.nio.ByteBuffer value
         0: .line 2812
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 3
         1: .line 2813
            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$OutputStreamEncoder.write:([BII)V
         2: .line 2814
            goto 6
         3: .line 2815
      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 2816
            aload 2 /* duplicated */
            invokevirtual java.nio.ByteBuffer.clear:()Ljava/nio/Buffer;
            pop
         5: .line 2817
            aload 0 /* this */
            aload 2 /* duplicated */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.write:(Ljava/nio/ByteBuffer;)V
        end local 2 // java.nio.ByteBuffer duplicated
         6: .line 2819
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.nio.ByteBuffer value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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 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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.MessageLite value
         0: .line 2823
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         1: .line 2824
            aload 0 /* this */
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessageNoTag:(Lcom/google/protobuf/MessageLite;)V
         2: .line 2825
            return
        end local 2 // com.google.protobuf.MessageLite value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.MessageLite value
        start local 3 // com.google.protobuf.Schema schema
         0: .line 2830
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_2
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         1: .line 2831
            aload 0 /* this */
            aload 2 /* value */
            aload 3 /* schema */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessageNoTag:(Lcom/google/protobuf/MessageLite;Lcom/google/protobuf/Schema;)V
         2: .line 2832
            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$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.MessageLite value
         0: .line 2837
            aload 0 /* this */
            iconst_1
            iconst_3
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         1: .line 2838
            aload 0 /* this */
            iconst_2
            iload 1 /* fieldNumber */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32:(II)V
         2: .line 2839
            aload 0 /* this */
            iconst_3
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeMessage:(ILcom/google/protobuf/MessageLite;)V
         3: .line 2840
            aload 0 /* this */
            iconst_1
            iconst_4
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         4: .line 2841
            return
        end local 2 // com.google.protobuf.MessageLite value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.ByteString value
         0: .line 2846
            aload 0 /* this */
            iconst_1
            iconst_3
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         1: .line 2847
            aload 0 /* this */
            iconst_2
            iload 1 /* fieldNumber */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32:(II)V
         2: .line 2848
            aload 0 /* this */
            iconst_3
            aload 2 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeBytes:(ILcom/google/protobuf/ByteString;)V
         3: .line 2849
            aload 0 /* this */
            iconst_1
            iconst_4
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeTag:(II)V
         4: .line 2850
            return
        end local 2 // com.google.protobuf.ByteString value
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // com.google.protobuf.MessageLite value
         0: .line 2854
            aload 0 /* this */
            aload 1 /* value */
            invokeinterface com.google.protobuf.MessageLite.getSerializedSize:()I
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32NoTag:(I)V
         1: .line 2855
            aload 1 /* value */
            aload 0 /* this */
            invokeinterface com.google.protobuf.MessageLite.writeTo:(Lcom/google/protobuf/CodedOutputStream;)V
         2: .line 2856
            return
        end local 1 // com.google.protobuf.MessageLite value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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$OutputStreamEncoder this
        start local 1 // com.google.protobuf.MessageLite value
        start local 2 // com.google.protobuf.Schema schema
         0: .line 2860
            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$OutputStreamEncoder.writeUInt32NoTag:(I)V
         1: .line 2861
            aload 2 /* schema */
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.wrapper:Lcom/google/protobuf/CodedOutputStreamWriter;
            invokeinterface com.google.protobuf.Schema.writeTo:(Ljava/lang/Object;Lcom/google/protobuf/Writer;)V
         2: .line 2862
            return
        end local 2 // com.google.protobuf.Schema schema
        end local 1 // com.google.protobuf.MessageLite value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // byte value
         0: .line 2866
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            if_icmpne 2
         1: .line 2867
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush:()V
         2: .line 2870
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:(B)V
         3: .line 2871
            return
        end local 1 // byte value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    4     1  value  B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  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$OutputStreamEncoder this
        start local 1 // int value
         0: .line 2875
            iload 1 /* value */
            iflt 3
         1: .line 2876
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32NoTag:(I)V
         2: .line 2877
            goto 4
         3: .line 2879
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* value */
            i2l
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt64NoTag:(J)V
         4: .line 2881
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // int value
         0: .line 2885
            aload 0 /* this */
            iconst_5
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2886
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferUInt32NoTag:(I)V
         2: .line 2887
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    3     1  value  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeFixed32NoTag(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // int value
         0: .line 2891
            aload 0 /* this */
            iconst_4
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2892
            aload 0 /* this */
            iload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferFixed32NoTag:(I)V
         2: .line 2893
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    3     1  value  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  final

  public void writeUInt64NoTag(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // long value
         0: .line 2897
            aload 0 /* this */
            bipush 10
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2898
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferUInt64NoTag:(J)V
         2: .line 2899
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    3     1  value  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void writeFixed64NoTag(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // long value
         0: .line 2903
            aload 0 /* this */
            bipush 8
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.flushIfNotAvailable:(I)V
         1: .line 2904
            aload 0 /* this */
            lload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferFixed64NoTag:(J)V
         2: .line 2905
            return
        end local 1 // long value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    3     1  value  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  final

  public void writeStringNoTag(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // java.lang.String value
         0: .line 2912
            aload 1 /* value */
            invokevirtual java.lang.String.length:()I
            iconst_3
            imul
            istore 2 /* maxLength */
        start local 2 // int maxLength
         1: .line 2913
            iload 2 /* maxLength */
            invokestatic com.google.protobuf.CodedOutputStream$OutputStreamEncoder.computeUInt32SizeNoTag:(I)I
            istore 3 /* maxLengthVarIntSize */
        start local 3 // int maxLengthVarIntSize
         2: .line 2917
            iload 3 /* maxLengthVarIntSize */
            iload 2 /* maxLength */
            iadd
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            if_icmple 8
         3: .line 2922
            iload 2 /* maxLength */
            newarray 8
            astore 4 /* encodedBytes */
        start local 4 // byte[] encodedBytes
         4: .line 2923
            aload 1 /* value */
            aload 4 /* encodedBytes */
            iconst_0
            iload 2 /* maxLength */
            invokestatic com.google.protobuf.Utf8.encode:(Ljava/lang/CharSequence;[BII)I
            istore 5 /* actualLength */
        start local 5 // int actualLength
         5: .line 2924
            aload 0 /* this */
            iload 5 /* actualLength */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeUInt32NoTag:(I)V
         6: .line 2925
            aload 0 /* this */
            aload 4 /* encodedBytes */
            iconst_0
            iload 5 /* actualLength */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.writeLazy:([BII)V
         7: .line 2926
            return
        end local 5 // int actualLength
        end local 4 // byte[] encodedBytes
         8: .line 2930
      StackMap locals: int int
      StackMap stack:
            iload 3 /* maxLengthVarIntSize */
            iload 2 /* maxLength */
            iadd
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            isub
            if_icmple 10
         9: .line 2932
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush:()V
        10: .line 2937
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            invokevirtual java.lang.String.length:()I
            invokestatic com.google.protobuf.CodedOutputStream$OutputStreamEncoder.computeUInt32SizeNoTag:(I)I
            istore 4 /* minLengthVarIntSize */
        start local 4 // int minLengthVarIntSize
        11: .line 2938
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            istore 5 /* oldPosition */
        start local 5 // int oldPosition
        12: .line 2941
            iload 4 /* minLengthVarIntSize */
            iload 3 /* maxLengthVarIntSize */
            if_icmpne 20
        13: .line 2942
            aload 0 /* this */
            iload 5 /* oldPosition */
            iload 4 /* minLengthVarIntSize */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        14: .line 2943
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            isub
            invokestatic com.google.protobuf.Utf8.encode:(Ljava/lang/CharSequence;[BII)I
            istore 7 /* newPosition */
        start local 7 // int newPosition
        15: .line 2946
            aload 0 /* this */
            iload 5 /* oldPosition */
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        16: .line 2947
            iload 7 /* newPosition */
            iload 5 /* oldPosition */
            isub
            iload 4 /* minLengthVarIntSize */
            isub
            istore 6 /* length */
        start local 6 // int length
        17: .line 2948
            aload 0 /* this */
            iload 6 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferUInt32NoTag:(I)V
        18: .line 2949
            aload 0 /* this */
            iload 7 /* newPosition */
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        end local 7 // int newPosition
        19: .line 2950
            goto 23
        end local 6 // int length
        20: .line 2951
      StackMap locals: 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
        21: .line 2952
            aload 0 /* this */
            iload 6 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.bufferUInt32NoTag:(I)V
        22: .line 2953
            aload 0 /* this */
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            iload 6 /* length */
            invokestatic com.google.protobuf.Utf8.encode:(Ljava/lang/CharSequence;[BII)I
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        23: .line 2955
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            iload 6 /* length */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
        24: .line 2956
            goto 33
        end local 6 // int length
      StackMap locals: com.google.protobuf.CodedOutputStream$OutputStreamEncoder java.lang.String int int int int
      StackMap stack: com.google.protobuf.Utf8$UnpairedSurrogateException
        25: astore 7 /* e */
        start local 7 // com.google.protobuf.Utf8$UnpairedSurrogateException e
        26: .line 2959
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            iload 5 /* oldPosition */
            isub
            isub
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
        27: .line 2960
            aload 0 /* this */
            iload 5 /* oldPosition */
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        28: .line 2961
            aload 7 /* e */
            athrow
        end local 7 // com.google.protobuf.Utf8$UnpairedSurrogateException e
        29: .line 2962
      StackMap locals:
      StackMap stack: java.lang.ArrayIndexOutOfBoundsException
            astore 7 /* e */
        start local 7 // java.lang.ArrayIndexOutOfBoundsException e
        30: .line 2963
            new com.google.protobuf.CodedOutputStream$OutOfSpaceException
            dup
            aload 7 /* e */
            invokespecial com.google.protobuf.CodedOutputStream$OutOfSpaceException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 7 // java.lang.ArrayIndexOutOfBoundsException e
        end local 5 // int oldPosition
        end local 4 // int minLengthVarIntSize
        end local 3 // int maxLengthVarIntSize
        end local 2 // int maxLength
        31: .line 2965
      StackMap locals: com.google.protobuf.CodedOutputStream$OutputStreamEncoder java.lang.String
      StackMap stack: com.google.protobuf.Utf8$UnpairedSurrogateException
            astore 2 /* e */
        start local 2 // com.google.protobuf.Utf8$UnpairedSurrogateException e
        32: .line 2966
            aload 0 /* this */
            aload 1 /* value */
            aload 2 /* e */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.inefficientWriteStringNoTag:(Ljava/lang/String;Lcom/google/protobuf/Utf8$UnpairedSurrogateException;)V
        end local 2 // com.google.protobuf.Utf8$UnpairedSurrogateException e
        33: .line 2968
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   34     0                 this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0   34     1                value  Ljava/lang/String;
            1   31     2            maxLength  I
            2   31     3  maxLengthVarIntSize  I
            4    8     4         encodedBytes  [B
            5    8     5         actualLength  I
           11   31     4  minLengthVarIntSize  I
           12   31     5          oldPosition  I
           17   20     6               length  I
           21   25     6               length  I
           15   19     7          newPosition  I
           26   29     7                    e  Lcom/google/protobuf/Utf8$UnpairedSurrogateException;
           30   31     7                    e  Ljava/lang/ArrayIndexOutOfBoundsException;
           32   33     2                    e  Lcom/google/protobuf/Utf8$UnpairedSurrogateException;
      Exception table:
        from    to  target  type
          12    24      25  Class com.google.protobuf.Utf8$UnpairedSurrogateException
          12    24      29  Class java.lang.ArrayIndexOutOfBoundsException
           0     7      31  Class com.google.protobuf.Utf8$UnpairedSurrogateException
           8    31      31  Class com.google.protobuf.Utf8$UnpairedSurrogateException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  public void flush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
         0: .line 2972
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            ifle 2
         1: .line 2974
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush:()V
         2: .line 2976
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
    Exceptions:
      throws java.io.IOException

  public void write(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // byte[] value
        start local 2 // int offset
        start local 3 // int length
         0: .line 2980
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            isub
            iload 3 /* length */
            if_icmplt 5
         1: .line 2982
            aload 1 /* value */
            iload 2 /* offset */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            iload 3 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         2: .line 2983
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            iload 3 /* length */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
         3: .line 2984
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            iload 3 /* length */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
         4: .line 2985
            goto 18
         5: .line 2988
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            isub
            istore 4 /* bytesWritten */
        start local 4 // int bytesWritten
         6: .line 2989
            aload 1 /* value */
            iload 2 /* offset */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            iload 4 /* bytesWritten */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         7: .line 2990
            iload 2 /* offset */
            iload 4 /* bytesWritten */
            iadd
            istore 2 /* offset */
         8: .line 2991
            iload 3 /* length */
            iload 4 /* bytesWritten */
            isub
            istore 3 /* length */
         9: .line 2992
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        10: .line 2993
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            iload 4 /* bytesWritten */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
        11: .line 2994
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush:()V
        12: .line 2999
            iload 3 /* length */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            if_icmpgt 16
        13: .line 3001
            aload 1 /* value */
            iload 2 /* offset */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            iconst_0
            iload 3 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 3002
            aload 0 /* this */
            iload 3 /* length */
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        15: .line 3003
            goto 17
        16: .line 3005
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.out:Ljava/io/OutputStream;
            aload 1 /* value */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual java.io.OutputStream.write:([BII)V
        17: .line 3007
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            iload 3 /* length */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
        end local 4 // int bytesWritten
        18: .line 3009
      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$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0   19     1         value  [B
            0   19     2        offset  I
            0   19     3        length  I
            6   18     4  bytesWritten  I
    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$OutputStreamEncoder this
        start local 1 // byte[] value
        start local 2 // int offset
        start local 3 // int length
         0: .line 3013
            aload 0 /* this */
            aload 1 /* value */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.write:([BII)V
         1: .line 3014
            return
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            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=4, locals=4, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // java.nio.ByteBuffer value
         0: .line 3018
            aload 1 /* value */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            istore 2 /* length */
        start local 2 // int length
         1: .line 3019
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            isub
            iload 2 /* length */
            if_icmplt 6
         2: .line 3021
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            iload 2 /* length */
            invokevirtual java.nio.ByteBuffer.get:([BII)Ljava/nio/ByteBuffer;
            pop
         3: .line 3022
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            iload 2 /* length */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
         4: .line 3023
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            iload 2 /* length */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
         5: .line 3024
            goto 21
         6: .line 3027
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            isub
            istore 3 /* bytesWritten */
        start local 3 // int bytesWritten
         7: .line 3028
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            iload 3 /* bytesWritten */
            invokevirtual java.nio.ByteBuffer.get:([BII)Ljava/nio/ByteBuffer;
            pop
         8: .line 3029
            iload 2 /* length */
            iload 3 /* bytesWritten */
            isub
            istore 2 /* length */
         9: .line 3030
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        10: .line 3031
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            iload 3 /* bytesWritten */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
        11: .line 3032
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush:()V
        12: .line 3037
            goto 17
        13: .line 3039
      StackMap locals: int
      StackMap stack:
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            iconst_0
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            invokevirtual java.nio.ByteBuffer.get:([BII)Ljava/nio/ByteBuffer;
            pop
        14: .line 3040
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.out:Ljava/io/OutputStream;
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            iconst_0
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            invokevirtual java.io.OutputStream.write:([BII)V
        15: .line 3041
            iload 2 /* length */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            isub
            istore 2 /* length */
        16: .line 3042
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
        17: .line 3037
      StackMap locals:
      StackMap stack:
            iload 2 /* length */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            if_icmpgt 13
        18: .line 3044
            aload 1 /* value */
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            iconst_0
            iload 2 /* length */
            invokevirtual java.nio.ByteBuffer.get:([BII)Ljava/nio/ByteBuffer;
            pop
        19: .line 3045
            aload 0 /* this */
            iload 2 /* length */
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
        20: .line 3046
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
            iload 2 /* length */
            iadd
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.totalBytesWritten:I
        end local 3 // int bytesWritten
        21: .line 3048
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int length
        end local 1 // java.nio.ByteBuffer value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   22     0          this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0   22     1         value  Ljava/nio/ByteBuffer;
            1   22     2        length  I
            7   21     3  bytesWritten  I
    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$OutputStreamEncoder this
        start local 1 // java.nio.ByteBuffer value
         0: .line 3052
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.write:(Ljava/nio/ByteBuffer;)V
         1: .line 3053
            return
        end local 1 // java.nio.ByteBuffer value
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    2     1  value  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      value  

  private void flushIfNotAvailable(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
        start local 1 // int requiredSize
         0: .line 3056
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.limit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            isub
            iload 1 /* requiredSize */
            if_icmpge 2
         1: .line 3057
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedOutputStream$OutputStreamEncoder.doFlush:()V
         2: .line 3059
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int requiredSize
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
            0    3     1  requiredSize  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      requiredSize  

  private void doFlush();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
         0: .line 3062
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.out:Ljava/io/OutputStream;
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.buffer:[B
            iconst_0
            aload 0 /* this */
            getfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
            invokevirtual java.io.OutputStream.write:([BII)V
         1: .line 3063
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedOutputStream$OutputStreamEncoder.position:I
         2: .line 3064
            return
        end local 0 // com.google.protobuf.CodedOutputStream$OutputStreamEncoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/protobuf/CodedOutputStream$OutputStreamEncoder;
    Exceptions:
      throws java.io.IOException
}
SourceFile: "CodedOutputStream.java"
NestHost: com.google.protobuf.CodedOutputStream
InnerClasses:
  private abstract AbstractBufferedEncoder = com.google.protobuf.CodedOutputStream$AbstractBufferedEncoder of com.google.protobuf.CodedOutputStream
  public OutOfSpaceException = com.google.protobuf.CodedOutputStream$OutOfSpaceException of com.google.protobuf.CodedOutputStream
  private final OutputStreamEncoder = com.google.protobuf.CodedOutputStream$OutputStreamEncoder of com.google.protobuf.CodedOutputStream
  UnpairedSurrogateException = com.google.protobuf.Utf8$UnpairedSurrogateException of com.google.protobuf.Utf8