class java.io.ObjectOutputStream$BlockDataOutputStream extends java.io.OutputStream implements java.io.DataOutput
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.io.ObjectOutputStream$BlockDataOutputStream
  super_class: java.io.OutputStream
{
  private static final int MAX_BLOCK_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1024

  private static final int MAX_HEADER_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int CHAR_BUF_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 256

  private final byte[] buf;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final byte[] hbuf;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final char[] cbuf;
    descriptor: [C
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean blkmode;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

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

  private final java.io.OutputStream out;
    descriptor: Ljava/io/OutputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.io.DataOutputStream dout;
    descriptor: Ljava/io/DataOutputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.io.OutputStream out
         0: .line 1770
            aload 0 /* this */
            invokespecial java.io.OutputStream.<init>:()V
         1: .line 1750
            aload 0 /* this */
            sipush 1024
            newarray 8
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
         2: .line 1752
            aload 0 /* this */
            iconst_5
            newarray 8
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.hbuf:[B
         3: .line 1754
            aload 0 /* this */
            sipush 256
            newarray 5
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
         4: .line 1757
            aload 0 /* this */
            iconst_0
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.blkmode:Z
         5: .line 1759
            aload 0 /* this */
            iconst_0
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         6: .line 1771
            aload 0 /* this */
            aload 1 /* out */
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.out:Ljava/io/OutputStream;
         7: .line 1772
            aload 0 /* this */
            new java.io.DataOutputStream
            dup
            aload 0 /* this */
            invokespecial java.io.DataOutputStream.<init>:(Ljava/io/OutputStream;)V
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
         8: .line 1773
            return
        end local 1 // java.io.OutputStream out
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    9     1   out  Ljava/io/OutputStream;
    MethodParameters:
      Name  Flags
      out   

  boolean setBlockDataMode(boolean);
    descriptor: (Z)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // boolean mode
         0: .line 1783
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.blkmode:Z
            iload 1 /* mode */
            if_icmpne 2
         1: .line 1784
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.blkmode:Z
            ireturn
         2: .line 1786
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
         3: .line 1787
            aload 0 /* this */
            iload 1 /* mode */
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.blkmode:Z
         4: .line 1788
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.blkmode:Z
            ifeq 5
            iconst_0
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_1
      StackMap locals:
      StackMap stack: int
         6: ireturn
        end local 1 // boolean mode
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    7     1  mode  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      mode  

  boolean getBlockDataMode();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
         0: .line 1796
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.blkmode:Z
            ireturn
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;

  public void write(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // int b
         0: .line 1807
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            sipush 1024
            if_icmplt 2
         1: .line 1808
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
         2: .line 1810
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            dup_x1
            iconst_1
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 1 /* b */
            i2b
            bastore
         3: .line 1811
            return
        end local 1 // int b
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    4     1     b  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     

  public void write(byte[]);
    descriptor: ([B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // byte[] b
         0: .line 1814
            aload 0 /* this */
            aload 1 /* b */
            iconst_0
            aload 1 /* b */
            arraylength
            iconst_0
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.write:([BIIZ)V
         1: .line 1815
            return
        end local 1 // byte[] b
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    2     1     b  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     

  public void write(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // byte[] b
        start local 2 // int off
        start local 3 // int len
         0: .line 1818
            aload 0 /* this */
            aload 1 /* b */
            iload 2 /* off */
            iload 3 /* len */
            iconst_0
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.write:([BIIZ)V
         1: .line 1819
            return
        end local 3 // int len
        end local 2 // int off
        end local 1 // byte[] b
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    2     1     b  [B
            0    2     2   off  I
            0    2     3   len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     
      off   
      len   

  public void flush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
         0: .line 1822
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
         1: .line 1823
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.out:Ljava/io/OutputStream;
            invokevirtual java.io.OutputStream.flush:()V
         2: .line 1824
            return
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
    Exceptions:
      throws java.io.IOException

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
         0: .line 1827
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.flush:()V
         1: .line 1828
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.out:Ljava/io/OutputStream;
            invokevirtual java.io.OutputStream.close:()V
         2: .line 1829
            return
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
    Exceptions:
      throws java.io.IOException

  void write(byte[], int, int, boolean);
    descriptor: ([BIIZ)V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // byte[] b
        start local 2 // int off
        start local 3 // int len
        start local 4 // boolean copy
         0: .line 1840
            iload 4 /* copy */
            ifne 17
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.blkmode:Z
            ifne 17
         1: .line 1841
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
         2: .line 1842
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.out:Ljava/io/OutputStream;
            aload 1 /* b */
            iload 2 /* off */
            iload 3 /* len */
            invokevirtual java.io.OutputStream.write:([BII)V
         3: .line 1843
            return
         4: .line 1847
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            sipush 1024
            if_icmplt 6
         5: .line 1848
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
         6: .line 1850
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            sipush 1024
            if_icmplt 12
            iload 4 /* copy */
            ifne 12
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            ifne 12
         7: .line 1852
            aload 0 /* this */
            sipush 1024
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeBlockHeader:(I)V
         8: .line 1853
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.out:Ljava/io/OutputStream;
            aload 1 /* b */
            iload 2 /* off */
            sipush 1024
            invokevirtual java.io.OutputStream.write:([BII)V
         9: .line 1854
            iinc 2 /* off */ 1024
        10: .line 1855
            iinc 3 /* len */ -1024
        11: .line 1856
            goto 17
        12: .line 1857
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            invokestatic java.lang.Math.min:(II)I
            istore 5 /* wlen */
        start local 5 // int wlen
        13: .line 1858
            aload 1 /* b */
            iload 2 /* off */
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 5 /* wlen */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 1859
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 5 /* wlen */
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
        15: .line 1860
            iload 2 /* off */
            iload 5 /* wlen */
            iadd
            istore 2 /* off */
        16: .line 1861
            iload 3 /* len */
            iload 5 /* wlen */
            isub
            istore 3 /* len */
        end local 5 // int wlen
        17: .line 1846
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            ifgt 4
        18: .line 1864
            return
        end local 4 // boolean copy
        end local 3 // int len
        end local 2 // int off
        end local 1 // byte[] b
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   19     1     b  [B
            0   19     2   off  I
            0   19     3   len  I
            0   19     4  copy  Z
           13   17     5  wlen  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     
      off   
      len   
      copy  

  void drain();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
         0: .line 1871
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            ifne 2
         1: .line 1872
            return
         2: .line 1874
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.blkmode:Z
            ifeq 4
         3: .line 1875
            aload 0 /* this */
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeBlockHeader:(I)V
         4: .line 1877
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.out:Ljava/io/OutputStream;
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            iconst_0
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            invokevirtual java.io.OutputStream.write:([BII)V
         5: .line 1878
            aload 0 /* this */
            iconst_0
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         6: .line 1879
            return
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
    Exceptions:
      throws java.io.IOException

  private void writeBlockHeader(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // int len
         0: .line 1887
            iload 1 /* len */
            sipush 255
            if_icmpgt 5
         1: .line 1888
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.hbuf:[B
            iconst_0
            bipush 119
            bastore
         2: .line 1889
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.hbuf:[B
            iconst_1
            iload 1 /* len */
            i2b
            bastore
         3: .line 1890
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.out:Ljava/io/OutputStream;
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.hbuf:[B
            iconst_0
            iconst_2
            invokevirtual java.io.OutputStream.write:([BII)V
         4: .line 1891
            goto 8
         5: .line 1892
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.hbuf:[B
            iconst_0
            bipush 122
            bastore
         6: .line 1893
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.hbuf:[B
            iconst_1
            iload 1 /* len */
            invokestatic java.io.Bits.putInt:([BII)V
         7: .line 1894
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.out:Ljava/io/OutputStream;
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.hbuf:[B
            iconst_0
            iconst_5
            invokevirtual java.io.OutputStream.write:([BII)V
         8: .line 1896
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int len
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    9     1   len  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      len   

  public void writeBoolean(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // boolean v
         0: .line 1907
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            sipush 1024
            if_icmplt 2
         1: .line 1908
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
         2: .line 1910
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            dup_x1
            iconst_1
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 1 /* v */
            invokestatic java.io.Bits.putBoolean:([BIZ)V
         3: .line 1911
            return
        end local 1 // boolean v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    4     1     v  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     

  public void writeByte(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // int v
         0: .line 1914
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            sipush 1024
            if_icmplt 2
         1: .line 1915
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
         2: .line 1917
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            dup_x1
            iconst_1
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 1 /* v */
            i2b
            bastore
         3: .line 1918
            return
        end local 1 // int v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    4     1     v  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     

  public void writeChar(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // int v
         0: .line 1921
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_2
            iadd
            sipush 1024
            if_icmpgt 4
         1: .line 1922
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 1 /* v */
            i2c
            invokestatic java.io.Bits.putChar:([BIC)V
         2: .line 1923
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_2
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         3: .line 1924
            goto 5
         4: .line 1925
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            iload 1 /* v */
            invokevirtual java.io.DataOutputStream.writeChar:(I)V
         5: .line 1927
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    6     1     v  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     

  public void writeShort(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // int v
         0: .line 1930
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_2
            iadd
            sipush 1024
            if_icmpgt 4
         1: .line 1931
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 1 /* v */
            i2s
            invokestatic java.io.Bits.putShort:([BIS)V
         2: .line 1932
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_2
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         3: .line 1933
            goto 5
         4: .line 1934
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            iload 1 /* v */
            invokevirtual java.io.DataOutputStream.writeShort:(I)V
         5: .line 1936
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    6     1     v  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     

  public void writeInt(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // int v
         0: .line 1939
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_4
            iadd
            sipush 1024
            if_icmpgt 4
         1: .line 1940
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 1 /* v */
            invokestatic java.io.Bits.putInt:([BII)V
         2: .line 1941
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_4
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         3: .line 1942
            goto 5
         4: .line 1943
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            iload 1 /* v */
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
         5: .line 1945
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    6     1     v  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     

  public void writeFloat(float);
    descriptor: (F)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // float v
         0: .line 1948
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_4
            iadd
            sipush 1024
            if_icmpgt 4
         1: .line 1949
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            fload 1 /* v */
            invokestatic java.io.Bits.putFloat:([BIF)V
         2: .line 1950
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_4
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         3: .line 1951
            goto 5
         4: .line 1952
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            fload 1 /* v */
            invokevirtual java.io.DataOutputStream.writeFloat:(F)V
         5: .line 1954
      StackMap locals:
      StackMap stack:
            return
        end local 1 // float v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    6     1     v  F
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     

  public void writeLong(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // long v
         0: .line 1957
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            bipush 8
            iadd
            sipush 1024
            if_icmpgt 4
         1: .line 1958
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            lload 1 /* v */
            invokestatic java.io.Bits.putLong:([BIJ)V
         2: .line 1959
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            bipush 8
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         3: .line 1960
            goto 5
         4: .line 1961
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            lload 1 /* v */
            invokevirtual java.io.DataOutputStream.writeLong:(J)V
         5: .line 1963
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    6     1     v  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     

  public void writeDouble(double);
    descriptor: (D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // double v
         0: .line 1966
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            bipush 8
            iadd
            sipush 1024
            if_icmpgt 4
         1: .line 1967
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            dload 1 /* v */
            invokestatic java.io.Bits.putDouble:([BID)V
         2: .line 1968
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            bipush 8
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         3: .line 1969
            goto 5
         4: .line 1970
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            dload 1 /* v */
            invokevirtual java.io.DataOutputStream.writeDouble:(D)V
         5: .line 1972
      StackMap locals:
      StackMap stack:
            return
        end local 1 // double v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    6     1     v  D
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     

  public void writeBytes(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.lang.String s
         0: .line 1975
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* endoff */
        start local 2 // int endoff
         1: .line 1976
            iconst_0
            istore 3 /* cpos */
        start local 3 // int cpos
         2: .line 1977
            iconst_0
            istore 4 /* csize */
        start local 4 // int csize
         3: .line 1978
            iconst_0
            istore 5 /* off */
        start local 5 // int off
         4: goto 17
         5: .line 1979
      StackMap locals: java.io.ObjectOutputStream$BlockDataOutputStream java.lang.String int int int int
      StackMap stack:
            iload 3 /* cpos */
            iload 4 /* csize */
            if_icmplt 9
         6: .line 1980
            iconst_0
            istore 3 /* cpos */
         7: .line 1981
            iload 2 /* endoff */
            iload 5 /* off */
            isub
            sipush 256
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* csize */
         8: .line 1982
            aload 1 /* s */
            iload 5 /* off */
            iload 5 /* off */
            iload 4 /* csize */
            iadd
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
            iconst_0
            invokevirtual java.lang.String.getChars:(II[CI)V
         9: .line 1984
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            sipush 1024
            if_icmplt 11
        10: .line 1985
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
        11: .line 1987
      StackMap locals:
      StackMap stack:
            iload 4 /* csize */
            iload 3 /* cpos */
            isub
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            invokestatic java.lang.Math.min:(II)I
            istore 6 /* n */
        start local 6 // int n
        12: .line 1988
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 6 /* n */
            iadd
            istore 7 /* stop */
        start local 7 // int stop
        13: .line 1989
            goto 15
        14: .line 1990
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            dup_x1
            iconst_1
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
            iload 3 /* cpos */
            iinc 3 /* cpos */ 1
            caload
            i2b
            bastore
        15: .line 1989
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 7 /* stop */
            if_icmplt 14
        16: .line 1992
            iload 5 /* off */
            iload 6 /* n */
            iadd
            istore 5 /* off */
        end local 7 // int stop
        end local 6 // int n
        17: .line 1978
      StackMap locals:
      StackMap stack:
            iload 5 /* off */
            iload 2 /* endoff */
            if_icmplt 5
        end local 5 // int off
        18: .line 1994
            return
        end local 4 // int csize
        end local 3 // int cpos
        end local 2 // int endoff
        end local 1 // java.lang.String s
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   19     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   19     1       s  Ljava/lang/String;
            1   19     2  endoff  I
            2   19     3    cpos  I
            3   19     4   csize  I
            4   18     5     off  I
           12   17     6       n  I
           13   17     7    stop  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  public void writeChars(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.lang.String s
         0: .line 1997
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* endoff */
        start local 2 // int endoff
         1: .line 1998
            iconst_0
            istore 3 /* off */
        start local 3 // int off
         2: goto 7
         3: .line 1999
      StackMap locals: int int
      StackMap stack:
            iload 2 /* endoff */
            iload 3 /* off */
            isub
            sipush 256
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* csize */
        start local 4 // int csize
         4: .line 2000
            aload 1 /* s */
            iload 3 /* off */
            iload 3 /* off */
            iload 4 /* csize */
            iadd
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
            iconst_0
            invokevirtual java.lang.String.getChars:(II[CI)V
         5: .line 2001
            aload 0 /* this */
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
            iconst_0
            iload 4 /* csize */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeChars:([CII)V
         6: .line 2002
            iload 3 /* off */
            iload 4 /* csize */
            iadd
            istore 3 /* off */
        end local 4 // int csize
         7: .line 1998
      StackMap locals:
      StackMap stack:
            iload 3 /* off */
            iload 2 /* endoff */
            if_icmplt 3
        end local 3 // int off
         8: .line 2004
            return
        end local 2 // int endoff
        end local 1 // java.lang.String s
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    9     1       s  Ljava/lang/String;
            1    9     2  endoff  I
            2    8     3     off  I
            4    7     4   csize  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  public void writeUTF(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.lang.String s
         0: .line 2007
            aload 0 /* this */
            aload 1 /* s */
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.getUTFLength:(Ljava/lang/String;)J
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeUTF:(Ljava/lang/String;J)V
         1: .line 2008
            return
        end local 1 // java.lang.String s
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    2     1     s  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  void writeBooleans(boolean[], int, int);
    descriptor: ([ZII)V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // boolean[] v
        start local 2 // int off
        start local 3 // int len
         0: .line 2020
            iload 2 /* off */
            iload 3 /* len */
            iadd
            istore 4 /* endoff */
        start local 4 // int endoff
         1: .line 2021
            goto 8
         2: .line 2022
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            sipush 1024
            if_icmplt 4
         3: .line 2023
            aload 0 /* this */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.drain:()V
         4: .line 2025
      StackMap locals:
      StackMap stack:
            iload 4 /* endoff */
            iload 2 /* off */
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            iadd
            invokestatic java.lang.Math.min:(II)I
            istore 5 /* stop */
        start local 5 // int stop
         5: .line 2026
            goto 7
         6: .line 2027
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            dup_x1
            iconst_1
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            baload
            invokestatic java.io.Bits.putBoolean:([BIZ)V
         7: .line 2026
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 5 /* stop */
            if_icmplt 6
        end local 5 // int stop
         8: .line 2021
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 4 /* endoff */
            if_icmplt 2
         9: .line 2030
            return
        end local 4 // int endoff
        end local 3 // int len
        end local 2 // int off
        end local 1 // boolean[] v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   10     1       v  [Z
            0   10     2     off  I
            0   10     3     len  I
            1   10     4  endoff  I
            5    8     5    stop  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     
      off   
      len   

  void writeChars(char[], int, int);
    descriptor: ([CII)V
    flags: (0x0000) 
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // char[] v
        start local 2 // int off
        start local 3 // int len
         0: .line 2033
            sipush 1022
            istore 4 /* limit */
        start local 4 // int limit
         1: .line 2034
            iload 2 /* off */
            iload 3 /* len */
            iadd
            istore 5 /* endoff */
        start local 5 // int endoff
         2: .line 2035
            goto 12
         3: .line 2036
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 4 /* limit */
            if_icmpgt 11
         4: .line 2037
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            iconst_1
            ishr
            istore 6 /* avail */
        start local 6 // int avail
         5: .line 2038
            iload 5 /* endoff */
            iload 2 /* off */
            iload 6 /* avail */
            iadd
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* stop */
        start local 7 // int stop
         6: .line 2039
            goto 9
         7: .line 2040
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            caload
            invokestatic java.io.Bits.putChar:([BIC)V
         8: .line 2041
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_2
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         9: .line 2039
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 7 /* stop */
            if_icmplt 7
        end local 7 // int stop
        end local 6 // int avail
        10: .line 2043
            goto 12
        11: .line 2044
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            caload
            invokevirtual java.io.DataOutputStream.writeChar:(I)V
        12: .line 2035
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 5 /* endoff */
            if_icmplt 3
        13: .line 2047
            return
        end local 5 // int endoff
        end local 4 // int limit
        end local 3 // int len
        end local 2 // int off
        end local 1 // char[] v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   14     1       v  [C
            0   14     2     off  I
            0   14     3     len  I
            1   14     4   limit  I
            2   14     5  endoff  I
            5   10     6   avail  I
            6   10     7    stop  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     
      off   
      len   

  void writeShorts(short[], int, int);
    descriptor: ([SII)V
    flags: (0x0000) 
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // short[] v
        start local 2 // int off
        start local 3 // int len
         0: .line 2050
            sipush 1022
            istore 4 /* limit */
        start local 4 // int limit
         1: .line 2051
            iload 2 /* off */
            iload 3 /* len */
            iadd
            istore 5 /* endoff */
        start local 5 // int endoff
         2: .line 2052
            goto 12
         3: .line 2053
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 4 /* limit */
            if_icmpgt 11
         4: .line 2054
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            iconst_1
            ishr
            istore 6 /* avail */
        start local 6 // int avail
         5: .line 2055
            iload 5 /* endoff */
            iload 2 /* off */
            iload 6 /* avail */
            iadd
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* stop */
        start local 7 // int stop
         6: .line 2056
            goto 9
         7: .line 2057
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            saload
            invokestatic java.io.Bits.putShort:([BIS)V
         8: .line 2058
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_2
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         9: .line 2056
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 7 /* stop */
            if_icmplt 7
        end local 7 // int stop
        end local 6 // int avail
        10: .line 2060
            goto 12
        11: .line 2061
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            saload
            invokevirtual java.io.DataOutputStream.writeShort:(I)V
        12: .line 2052
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 5 /* endoff */
            if_icmplt 3
        13: .line 2064
            return
        end local 5 // int endoff
        end local 4 // int limit
        end local 3 // int len
        end local 2 // int off
        end local 1 // short[] v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   14     1       v  [S
            0   14     2     off  I
            0   14     3     len  I
            1   14     4   limit  I
            2   14     5  endoff  I
            5   10     6   avail  I
            6   10     7    stop  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     
      off   
      len   

  void writeInts(int[], int, int);
    descriptor: ([III)V
    flags: (0x0000) 
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // int[] v
        start local 2 // int off
        start local 3 // int len
         0: .line 2067
            sipush 1020
            istore 4 /* limit */
        start local 4 // int limit
         1: .line 2068
            iload 2 /* off */
            iload 3 /* len */
            iadd
            istore 5 /* endoff */
        start local 5 // int endoff
         2: .line 2069
            goto 12
         3: .line 2070
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 4 /* limit */
            if_icmpgt 11
         4: .line 2071
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            iconst_2
            ishr
            istore 6 /* avail */
        start local 6 // int avail
         5: .line 2072
            iload 5 /* endoff */
            iload 2 /* off */
            iload 6 /* avail */
            iadd
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* stop */
        start local 7 // int stop
         6: .line 2073
            goto 9
         7: .line 2074
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            iaload
            invokestatic java.io.Bits.putInt:([BII)V
         8: .line 2075
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_4
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         9: .line 2073
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 7 /* stop */
            if_icmplt 7
        end local 7 // int stop
        end local 6 // int avail
        10: .line 2077
            goto 12
        11: .line 2078
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            iaload
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
        12: .line 2069
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 5 /* endoff */
            if_icmplt 3
        13: .line 2081
            return
        end local 5 // int endoff
        end local 4 // int limit
        end local 3 // int len
        end local 2 // int off
        end local 1 // int[] v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   14     1       v  [I
            0   14     2     off  I
            0   14     3     len  I
            1   14     4   limit  I
            2   14     5  endoff  I
            5   10     6   avail  I
            6   10     7    stop  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     
      off   
      len   

  void writeFloats(float[], int, int);
    descriptor: ([FII)V
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // float[] v
        start local 2 // int off
        start local 3 // int len
         0: .line 2084
            sipush 1020
            istore 4 /* limit */
        start local 4 // int limit
         1: .line 2085
            iload 2 /* off */
            iload 3 /* len */
            iadd
            istore 5 /* endoff */
        start local 5 // int endoff
         2: .line 2086
            goto 11
         3: .line 2087
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 4 /* limit */
            if_icmpgt 10
         4: .line 2088
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            iconst_2
            ishr
            istore 6 /* avail */
        start local 6 // int avail
         5: .line 2089
            iload 5 /* endoff */
            iload 2 /* off */
            isub
            iload 6 /* avail */
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* chunklen */
        start local 7 // int chunklen
         6: .line 2090
            aload 1 /* v */
            iload 2 /* off */
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 7 /* chunklen */
            invokestatic java.io.ObjectOutputStream.floatsToBytes:([FI[BII)V
         7: .line 2091
            iload 2 /* off */
            iload 7 /* chunklen */
            iadd
            istore 2 /* off */
         8: .line 2092
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 7 /* chunklen */
            iconst_2
            ishl
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
        end local 7 // int chunklen
        end local 6 // int avail
         9: .line 2093
            goto 11
        10: .line 2094
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            faload
            invokevirtual java.io.DataOutputStream.writeFloat:(F)V
        11: .line 2086
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 5 /* endoff */
            if_icmplt 3
        12: .line 2097
            return
        end local 5 // int endoff
        end local 4 // int limit
        end local 3 // int len
        end local 2 // int off
        end local 1 // float[] v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   13     1         v  [F
            0   13     2       off  I
            0   13     3       len  I
            1   13     4     limit  I
            2   13     5    endoff  I
            5    9     6     avail  I
            6    9     7  chunklen  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     
      off   
      len   

  void writeLongs(long[], int, int);
    descriptor: ([JII)V
    flags: (0x0000) 
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // long[] v
        start local 2 // int off
        start local 3 // int len
         0: .line 2100
            sipush 1016
            istore 4 /* limit */
        start local 4 // int limit
         1: .line 2101
            iload 2 /* off */
            iload 3 /* len */
            iadd
            istore 5 /* endoff */
        start local 5 // int endoff
         2: .line 2102
            goto 12
         3: .line 2103
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 4 /* limit */
            if_icmpgt 11
         4: .line 2104
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            iconst_3
            ishr
            istore 6 /* avail */
        start local 6 // int avail
         5: .line 2105
            iload 5 /* endoff */
            iload 2 /* off */
            iload 6 /* avail */
            iadd
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* stop */
        start local 7 // int stop
         6: .line 2106
            goto 9
         7: .line 2107
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            laload
            invokestatic java.io.Bits.putLong:([BIJ)V
         8: .line 2108
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            bipush 8
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
         9: .line 2106
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 7 /* stop */
            if_icmplt 7
        end local 7 // int stop
        end local 6 // int avail
        10: .line 2110
            goto 12
        11: .line 2111
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            laload
            invokevirtual java.io.DataOutputStream.writeLong:(J)V
        12: .line 2102
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 5 /* endoff */
            if_icmplt 3
        13: .line 2114
            return
        end local 5 // int endoff
        end local 4 // int limit
        end local 3 // int len
        end local 2 // int off
        end local 1 // long[] v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   14     1       v  [J
            0   14     2     off  I
            0   14     3     len  I
            1   14     4   limit  I
            2   14     5  endoff  I
            5   10     6   avail  I
            6   10     7    stop  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     
      off   
      len   

  void writeDoubles(double[], int, int);
    descriptor: ([DII)V
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // double[] v
        start local 2 // int off
        start local 3 // int len
         0: .line 2117
            sipush 1016
            istore 4 /* limit */
        start local 4 // int limit
         1: .line 2118
            iload 2 /* off */
            iload 3 /* len */
            iadd
            istore 5 /* endoff */
        start local 5 // int endoff
         2: .line 2119
            goto 11
         3: .line 2120
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 4 /* limit */
            if_icmpgt 10
         4: .line 2121
            sipush 1024
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            isub
            iconst_3
            ishr
            istore 6 /* avail */
        start local 6 // int avail
         5: .line 2122
            iload 5 /* endoff */
            iload 2 /* off */
            isub
            iload 6 /* avail */
            invokestatic java.lang.Math.min:(II)I
            istore 7 /* chunklen */
        start local 7 // int chunklen
         6: .line 2123
            aload 1 /* v */
            iload 2 /* off */
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 7 /* chunklen */
            invokestatic java.io.ObjectOutputStream.doublesToBytes:([DI[BII)V
         7: .line 2124
            iload 2 /* off */
            iload 7 /* chunklen */
            iadd
            istore 2 /* off */
         8: .line 2125
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 7 /* chunklen */
            iconst_3
            ishl
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
        end local 7 // int chunklen
        end local 6 // int avail
         9: .line 2126
            goto 11
        10: .line 2127
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.dout:Ljava/io/DataOutputStream;
            aload 1 /* v */
            iload 2 /* off */
            iinc 2 /* off */ 1
            daload
            invokevirtual java.io.DataOutputStream.writeDouble:(D)V
        11: .line 2119
      StackMap locals:
      StackMap stack:
            iload 2 /* off */
            iload 5 /* endoff */
            if_icmplt 3
        12: .line 2130
            return
        end local 5 // int endoff
        end local 4 // int limit
        end local 3 // int len
        end local 2 // int off
        end local 1 // double[] v
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   13     1         v  [D
            0   13     2       off  I
            0   13     3       len  I
            1   13     4     limit  I
            2   13     5    endoff  I
            5    9     6     avail  I
            6    9     7  chunklen  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      v     
      off   
      len   

  long getUTFLength(java.lang.String);
    descriptor: (Ljava/lang/String;)J
    flags: (0x0000) 
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.lang.String s
         0: .line 2136
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         1: .line 2137
            lconst_0
            lstore 3 /* utflen */
        start local 3 // long utflen
         2: .line 2138
            iconst_0
            istore 5 /* off */
        start local 5 // int off
         3: goto 19
         4: .line 2139
      StackMap locals: int long int
      StackMap stack:
            iload 2 /* len */
            iload 5 /* off */
            isub
            sipush 256
            invokestatic java.lang.Math.min:(II)I
            istore 6 /* csize */
        start local 6 // int csize
         5: .line 2140
            aload 1 /* s */
            iload 5 /* off */
            iload 5 /* off */
            iload 6 /* csize */
            iadd
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
            iconst_0
            invokevirtual java.lang.String.getChars:(II[CI)V
         6: .line 2141
            iconst_0
            istore 7 /* cpos */
        start local 7 // int cpos
         7: goto 17
         8: .line 2142
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
            iload 7 /* cpos */
            caload
            istore 8 /* c */
        start local 8 // char c
         9: .line 2143
            iload 8 /* c */
            iconst_1
            if_icmplt 12
            iload 8 /* c */
            bipush 127
            if_icmpgt 12
        10: .line 2144
            lload 3 /* utflen */
            lconst_1
            ladd
            lstore 3 /* utflen */
        11: .line 2145
            goto 16
      StackMap locals: int
      StackMap stack:
        12: iload 8 /* c */
            sipush 2047
            if_icmple 15
        13: .line 2146
            lload 3 /* utflen */
            ldc 3
            ladd
            lstore 3 /* utflen */
        14: .line 2147
            goto 16
        15: .line 2148
      StackMap locals:
      StackMap stack:
            lload 3 /* utflen */
            ldc 2
            ladd
            lstore 3 /* utflen */
        end local 8 // char c
        16: .line 2141
      StackMap locals:
      StackMap stack:
            iinc 7 /* cpos */ 1
      StackMap locals:
      StackMap stack:
        17: iload 7 /* cpos */
            iload 6 /* csize */
            if_icmplt 8
        end local 7 // int cpos
        18: .line 2151
            iload 5 /* off */
            iload 6 /* csize */
            iadd
            istore 5 /* off */
        end local 6 // int csize
        19: .line 2138
      StackMap locals:
      StackMap stack:
            iload 5 /* off */
            iload 2 /* len */
            if_icmplt 4
        end local 5 // int off
        20: .line 2153
            lload 3 /* utflen */
            lreturn
        end local 3 // long utflen
        end local 2 // int len
        end local 1 // java.lang.String s
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   21     1       s  Ljava/lang/String;
            1   21     2     len  I
            2   21     3  utflen  J
            3   20     5     off  I
            5   19     6   csize  I
            7   18     7    cpos  I
            9   16     8       c  C
    MethodParameters:
      Name  Flags
      s     

  void writeUTF(java.lang.String, long);
    descriptor: (Ljava/lang/String;J)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.lang.String s
        start local 2 // long utflen
         0: .line 2163
            lload 2 /* utflen */
            ldc 65535
            lcmp
            ifle 2
         1: .line 2164
            new java.io.UTFDataFormatException
            dup
            invokespecial java.io.UTFDataFormatException.<init>:()V
            athrow
         2: .line 2166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 2 /* utflen */
            l2i
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeShort:(I)V
         3: .line 2167
            lload 2 /* utflen */
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            i2l
            lcmp
            ifne 6
         4: .line 2168
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeBytes:(Ljava/lang/String;)V
         5: .line 2169
            goto 7
         6: .line 2170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeUTFBody:(Ljava/lang/String;)V
         7: .line 2172
      StackMap locals:
      StackMap stack:
            return
        end local 2 // long utflen
        end local 1 // java.lang.String s
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    8     1       s  Ljava/lang/String;
            0    8     2  utflen  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      s       
      utflen  

  void writeLongUTF(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.lang.String s
         0: .line 2180
            aload 0 /* this */
            aload 1 /* s */
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.getUTFLength:(Ljava/lang/String;)J
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeLongUTF:(Ljava/lang/String;J)V
         1: .line 2181
            return
        end local 1 // java.lang.String s
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    2     1     s  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  void writeLongUTF(java.lang.String, long);
    descriptor: (Ljava/lang/String;J)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.lang.String s
        start local 2 // long utflen
         0: .line 2188
            aload 0 /* this */
            lload 2 /* utflen */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeLong:(J)V
         1: .line 2189
            lload 2 /* utflen */
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            i2l
            lcmp
            ifne 4
         2: .line 2190
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeBytes:(Ljava/lang/String;)V
         3: .line 2191
            goto 5
         4: .line 2192
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.writeUTFBody:(Ljava/lang/String;)V
         5: .line 2194
      StackMap locals:
      StackMap stack:
            return
        end local 2 // long utflen
        end local 1 // java.lang.String s
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0    6     1       s  Ljava/lang/String;
            0    6     2  utflen  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      s       
      utflen  

  private void writeUTFBody(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
        start local 1 // java.lang.String s
         0: .line 2201
            sipush 1021
            istore 2 /* limit */
        start local 2 // int limit
         1: .line 2202
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            istore 3 /* len */
        start local 3 // int len
         2: .line 2203
            iconst_0
            istore 4 /* off */
        start local 4 // int off
         3: goto 36
         4: .line 2204
      StackMap locals: int int int
      StackMap stack:
            iload 3 /* len */
            iload 4 /* off */
            isub
            sipush 256
            invokestatic java.lang.Math.min:(II)I
            istore 5 /* csize */
        start local 5 // int csize
         5: .line 2205
            aload 1 /* s */
            iload 4 /* off */
            iload 4 /* off */
            iload 5 /* csize */
            iadd
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
            iconst_0
            invokevirtual java.lang.String.getChars:(II[CI)V
         6: .line 2206
            iconst_0
            istore 6 /* cpos */
        start local 6 // int cpos
         7: goto 34
         8: .line 2207
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.cbuf:[C
            iload 6 /* cpos */
            caload
            istore 7 /* c */
        start local 7 // char c
         9: .line 2208
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 2 /* limit */
            if_icmpgt 23
        10: .line 2209
            iload 7 /* c */
            bipush 127
            if_icmpgt 13
            iload 7 /* c */
            ifeq 13
        11: .line 2210
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            dup_x1
            iconst_1
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iload 7 /* c */
            i2b
            bastore
        12: .line 2211
            goto 33
      StackMap locals: int
      StackMap stack:
        13: iload 7 /* c */
            sipush 2047
            if_icmple 19
        14: .line 2212
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_2
            iadd
            sipush 128
            iload 7 /* c */
            iconst_0
            ishr
            bipush 63
            iand
            ior
            i2b
            bastore
        15: .line 2213
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_1
            iadd
            sipush 128
            iload 7 /* c */
            bipush 6
            ishr
            bipush 63
            iand
            ior
            i2b
            bastore
        16: .line 2214
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_0
            iadd
            sipush 224
            iload 7 /* c */
            bipush 12
            ishr
            bipush 15
            iand
            ior
            i2b
            bastore
        17: .line 2215
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_3
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
        18: .line 2216
            goto 33
        19: .line 2217
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_1
            iadd
            sipush 128
            iload 7 /* c */
            iconst_0
            ishr
            bipush 63
            iand
            ior
            i2b
            bastore
        20: .line 2218
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.buf:[B
            aload 0 /* this */
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_0
            iadd
            sipush 192
            iload 7 /* c */
            bipush 6
            ishr
            bipush 31
            iand
            ior
            i2b
            bastore
        21: .line 2219
            aload 0 /* this */
            dup
            getfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
            iconst_2
            iadd
            putfield java.io.ObjectOutputStream$BlockDataOutputStream.pos:I
        22: .line 2221
            goto 33
        23: .line 2222
      StackMap locals:
      StackMap stack:
            iload 7 /* c */
            bipush 127
            if_icmpgt 26
            iload 7 /* c */
            ifeq 26
        24: .line 2223
            aload 0 /* this */
            iload 7 /* c */
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.write:(I)V
        25: .line 2224
            goto 33
      StackMap locals:
      StackMap stack:
        26: iload 7 /* c */
            sipush 2047
            if_icmple 31
        27: .line 2225
            aload 0 /* this */
            sipush 224
            iload 7 /* c */
            bipush 12
            ishr
            bipush 15
            iand
            ior
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.write:(I)V
        28: .line 2226
            aload 0 /* this */
            sipush 128
            iload 7 /* c */
            bipush 6
            ishr
            bipush 63
            iand
            ior
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.write:(I)V
        29: .line 2227
            aload 0 /* this */
            sipush 128
            iload 7 /* c */
            iconst_0
            ishr
            bipush 63
            iand
            ior
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.write:(I)V
        30: .line 2228
            goto 33
        31: .line 2229
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 192
            iload 7 /* c */
            bipush 6
            ishr
            bipush 31
            iand
            ior
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.write:(I)V
        32: .line 2230
            aload 0 /* this */
            sipush 128
            iload 7 /* c */
            iconst_0
            ishr
            bipush 63
            iand
            ior
            invokevirtual java.io.ObjectOutputStream$BlockDataOutputStream.write:(I)V
        end local 7 // char c
        33: .line 2206
      StackMap locals:
      StackMap stack:
            iinc 6 /* cpos */ 1
      StackMap locals:
      StackMap stack:
        34: iload 6 /* cpos */
            iload 5 /* csize */
            if_icmplt 8
        end local 6 // int cpos
        35: .line 2234
            iload 4 /* off */
            iload 5 /* csize */
            iadd
            istore 4 /* off */
        end local 5 // int csize
        36: .line 2203
      StackMap locals:
      StackMap stack:
            iload 4 /* off */
            iload 3 /* len */
            if_icmplt 4
        end local 4 // int off
        37: .line 2236
            return
        end local 3 // int len
        end local 2 // int limit
        end local 1 // java.lang.String s
        end local 0 // java.io.ObjectOutputStream$BlockDataOutputStream this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   38     0   this  Ljava/io/ObjectOutputStream$BlockDataOutputStream;
            0   38     1      s  Ljava/lang/String;
            1   38     2  limit  I
            2   38     3    len  I
            3   37     4    off  I
            5   36     5  csize  I
            7   35     6   cpos  I
            9   33     7      c  C
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     
}
SourceFile: "ObjectOutputStream.java"
NestHost: java.io.ObjectOutputStream
InnerClasses:
  private BlockDataOutputStream = java.io.ObjectOutputStream$BlockDataOutputStream of java.io.ObjectOutputStream