public class sun.nio.ch.IOUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.nio.ch.IOUtil
  super_class: java.lang.Object
{
  static final int IOV_MAX;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 37
            ldc Lsun/nio/ch/IOUtil;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
         3: .line 436
            new sun.nio.ch.IOUtil$1
            dup
            invokespecial sun.nio.ch.IOUtil$1.<init>:()V
         4: .line 435
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         5: .line 444
            invokestatic sun.nio.ch.IOUtil.initIDs:()V
         6: .line 446
            invokestatic sun.nio.ch.IOUtil.iovMax:()I
            putstatic sun.nio.ch.IOUtil.IOV_MAX:I
         7: .line 447
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.nio.ch.IOUtil this
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // sun.nio.ch.IOUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/nio/ch/IOUtil;

  static int write(java.io.FileDescriptor, java.nio.ByteBuffer, long, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer src
        start local 2 // long position
        start local 4 // sun.nio.ch.NativeDispatcher nd
         0: .line 50
            aload 0 /* fd */
            aload 1 /* src */
            lload 2 /* position */
            iconst_0
            iconst_m1
            aload 4 /* nd */
            invokestatic sun.nio.ch.IOUtil.write:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            ireturn
        end local 4 // sun.nio.ch.NativeDispatcher nd
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer src
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0        fd  Ljava/io/FileDescriptor;
            0    1     1       src  Ljava/nio/ByteBuffer;
            0    1     2  position  J
            0    1     4        nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      fd        
      src       
      position  
      nd        

  static int write(java.io.FileDescriptor, java.nio.ByteBuffer, long, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=14, args_size=6
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer src
        start local 2 // long position
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 57
            aload 1 /* src */
            instanceof sun.nio.ch.DirectBuffer
            ifeq 2
         1: .line 58
            aload 0 /* fd */
            aload 1 /* src */
            lload 2 /* position */
            iload 4 /* directIO */
            iload 5 /* alignment */
            aload 6 /* nd */
            invokestatic sun.nio.ch.IOUtil.writeFromNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            ireturn
         2: .line 62
      StackMap locals:
      StackMap stack:
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 7 /* pos */
        start local 7 // int pos
         3: .line 63
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 8 /* lim */
        start local 8 // int lim
         4: .line 64
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 5
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmple 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 65
      StackMap locals: int int
      StackMap stack:
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmpgt 6
            iload 8 /* lim */
            iload 7 /* pos */
            isub
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 9 /* rem */
        start local 9 // int rem
         8: .line 67
            iload 4 /* directIO */
            ifeq 12
         9: .line 68
            iload 9 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
        10: .line 69
            iload 9 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.getTemporaryAlignedDirectBuffer:(II)Ljava/nio/ByteBuffer;
            astore 10 /* bb */
        start local 10 // java.nio.ByteBuffer bb
        11: .line 70
            goto 13
        end local 10 // java.nio.ByteBuffer bb
        12: .line 71
      StackMap locals: int
      StackMap stack:
            iload 9 /* rem */
            invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
            astore 10 /* bb */
        start local 10 // java.nio.ByteBuffer bb
        13: .line 74
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 10 /* bb */
            aload 1 /* src */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        14: .line 75
            aload 10 /* bb */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
            pop
        15: .line 77
            aload 1 /* src */
            iload 7 /* pos */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        16: .line 79
            aload 0 /* fd */
            aload 10 /* bb */
            lload 2 /* position */
            iload 4 /* directIO */
            iload 5 /* alignment */
            aload 6 /* nd */
            invokestatic sun.nio.ch.IOUtil.writeFromNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            istore 11 /* n */
        start local 11 // int n
        17: .line 80
            iload 11 /* n */
            ifle 19
        18: .line 82
            aload 1 /* src */
            iload 7 /* pos */
            iload 11 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        19: .line 84
      StackMap locals: int
      StackMap stack:
            iload 11 /* n */
            istore 13
        20: .line 86
            aload 10 /* bb */
            invokestatic sun.nio.ch.Util.offerFirstTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        21: .line 84
            iload 13
            ireturn
        end local 11 // int n
        22: .line 85
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long int int sun.nio.ch.NativeDispatcher int int int java.nio.ByteBuffer
      StackMap stack: java.lang.Throwable
            astore 12
        23: .line 86
            aload 10 /* bb */
            invokestatic sun.nio.ch.Util.offerFirstTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        24: .line 87
            aload 12
            athrow
        end local 10 // java.nio.ByteBuffer bb
        end local 9 // int rem
        end local 8 // int lim
        end local 7 // int pos
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer src
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0         fd  Ljava/io/FileDescriptor;
            0   25     1        src  Ljava/nio/ByteBuffer;
            0   25     2   position  J
            0   25     4   directIO  Z
            0   25     5  alignment  I
            0   25     6         nd  Lsun/nio/ch/NativeDispatcher;
            3   25     7        pos  I
            4   25     8        lim  I
            8   25     9        rem  I
           11   12    10         bb  Ljava/nio/ByteBuffer;
           13   25    10         bb  Ljava/nio/ByteBuffer;
           17   22    11          n  I
      Exception table:
        from    to  target  type
          13    20      22  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      src        
      position   
      directIO   
      alignment  
      nd         

  private static int writeFromNativeBuffer(java.io.FileDescriptor, java.nio.ByteBuffer, long, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=11, args_size=6
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer bb
        start local 2 // long position
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 95
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 7 /* pos */
        start local 7 // int pos
         1: .line 96
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 8 /* lim */
        start local 8 // int lim
         2: .line 97
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 3
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmple 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 98
      StackMap locals: int int
      StackMap stack:
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmpgt 4
            iload 8 /* lim */
            iload 7 /* pos */
            isub
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 9 /* rem */
        start local 9 // int rem
         6: .line 100
            iload 4 /* directIO */
            ifeq 9
         7: .line 101
            aload 1 /* bb */
            iload 7 /* pos */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkBufferPositionAligned:(Ljava/nio/ByteBuffer;II)V
         8: .line 102
            iload 9 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
         9: .line 105
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 10 /* written */
        start local 10 // int written
        10: .line 106
            iload 9 /* rem */
            ifne 12
        11: .line 107
            iconst_0
            ireturn
        12: .line 108
      StackMap locals: int
      StackMap stack:
            lload 2 /* position */
            ldc -1
            lcmp
            ifeq 18
        13: .line 109
            aload 6 /* nd */
            aload 0 /* fd */
        14: .line 110
            aload 1 /* bb */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 7 /* pos */
            i2l
            ladd
        15: .line 111
            iload 9 /* rem */
            lload 2 /* position */
        16: .line 109
            invokevirtual sun.nio.ch.NativeDispatcher.pwrite:(Ljava/io/FileDescriptor;JIJ)I
            istore 10 /* written */
        17: .line 112
            goto 19
        18: .line 113
      StackMap locals:
      StackMap stack:
            aload 6 /* nd */
            aload 0 /* fd */
            aload 1 /* bb */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 7 /* pos */
            i2l
            ladd
            iload 9 /* rem */
            invokevirtual sun.nio.ch.NativeDispatcher.write:(Ljava/io/FileDescriptor;JI)I
            istore 10 /* written */
        19: .line 115
      StackMap locals:
      StackMap stack:
            iload 10 /* written */
            ifle 21
        20: .line 116
            aload 1 /* bb */
            iload 7 /* pos */
            iload 10 /* written */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        21: .line 117
      StackMap locals:
      StackMap stack:
            iload 10 /* written */
            ireturn
        end local 10 // int written
        end local 9 // int rem
        end local 8 // int lim
        end local 7 // int pos
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer bb
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0         fd  Ljava/io/FileDescriptor;
            0   22     1         bb  Ljava/nio/ByteBuffer;
            0   22     2   position  J
            0   22     4   directIO  Z
            0   22     5  alignment  I
            0   22     6         nd  Lsun/nio/ch/NativeDispatcher;
            1   22     7        pos  I
            2   22     8        lim  I
            6   22     9        rem  I
           10   22    10    written  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      bb         
      position   
      directIO   
      alignment  
      nd         

  static long write(java.io.FileDescriptor, java.nio.ByteBuffer[], sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;Lsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // sun.nio.ch.NativeDispatcher nd
         0: .line 123
            aload 0 /* fd */
            aload 1 /* bufs */
            iconst_0
            aload 1 /* bufs */
            arraylength
            iconst_0
            iconst_m1
            aload 2 /* nd */
            invokestatic sun.nio.ch.IOUtil.write:(Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
            lreturn
        end local 2 // sun.nio.ch.NativeDispatcher nd
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    fd  Ljava/io/FileDescriptor;
            0    1     1  bufs  [Ljava/nio/ByteBuffer;
            0    1     2    nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    
      bufs  
      nd    

  static long write(java.io.FileDescriptor, java.nio.ByteBuffer[], int, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IILsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // int offset
        start local 3 // int length
        start local 4 // sun.nio.ch.NativeDispatcher nd
         0: .line 130
            aload 0 /* fd */
            aload 1 /* bufs */
            iload 2 /* offset */
            iload 3 /* length */
            iconst_0
            iconst_m1
            aload 4 /* nd */
            invokestatic sun.nio.ch.IOUtil.write:(Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
            lreturn
        end local 4 // sun.nio.ch.NativeDispatcher nd
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      fd  Ljava/io/FileDescriptor;
            0    1     1    bufs  [Ljava/nio/ByteBuffer;
            0    1     2  offset  I
            0    1     3  length  I
            0    1     4      nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      bufs    
      offset  
      length  
      nd      

  static long write(java.io.FileDescriptor, java.nio.ByteBuffer[], int, int, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=26, args_size=7
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // int offset
        start local 3 // int length
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 137
            iload 3 /* length */
            invokestatic sun.nio.ch.IOVecWrapper.get:(I)Lsun/nio/ch/IOVecWrapper;
            astore 7 /* vec */
        start local 7 // sun.nio.ch.IOVecWrapper vec
         1: .line 139
            iconst_0
            istore 8 /* completed */
        start local 8 // boolean completed
         2: .line 140
            iconst_0
            istore 9 /* iov_len */
        start local 9 // int iov_len
         3: .line 144
            iload 2 /* offset */
            iload 3 /* length */
            iadd
            istore 10 /* count */
        start local 10 // int count
         4: .line 145
            iload 2 /* offset */
            istore 11 /* i */
        start local 11 // int i
         5: .line 146
            goto 32
         6: .line 147
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            aload 1 /* bufs */
            iload 11 /* i */
            aaload
            astore 12 /* buf */
        start local 12 // java.nio.ByteBuffer buf
         7: .line 148
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 13 /* pos */
        start local 13 // int pos
         8: .line 149
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 14 /* lim */
        start local 14 // int lim
         9: .line 150
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 10
            iload 13 /* pos */
            iload 14 /* lim */
            if_icmple 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 151
      StackMap locals: java.nio.ByteBuffer int int
      StackMap stack:
            iload 13 /* pos */
            iload 14 /* lim */
            if_icmpgt 11
            iload 14 /* lim */
            iload 13 /* pos */
            isub
            goto 12
      StackMap locals:
      StackMap stack:
        11: iconst_0
      StackMap locals:
      StackMap stack: int
        12: istore 15 /* rem */
        start local 15 // int rem
        13: .line 152
            iload 4 /* directIO */
            ifeq 15
        14: .line 153
            iload 15 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
        15: .line 155
      StackMap locals: int
      StackMap stack:
            iload 15 /* rem */
            ifle 31
        16: .line 156
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 12 /* buf */
            iload 13 /* pos */
            iload 15 /* rem */
            invokevirtual sun.nio.ch.IOVecWrapper.setBuffer:(ILjava/nio/ByteBuffer;II)V
        17: .line 159
            aload 12 /* buf */
            instanceof sun.nio.ch.DirectBuffer
            ifne 28
        18: .line 161
            iload 4 /* directIO */
            ifeq 21
        19: .line 162
            iload 15 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.getTemporaryAlignedDirectBuffer:(II)Ljava/nio/ByteBuffer;
            astore 16 /* shadow */
        start local 16 // java.nio.ByteBuffer shadow
        20: goto 22
        end local 16 // java.nio.ByteBuffer shadow
        21: .line 164
      StackMap locals:
      StackMap stack:
            iload 15 /* rem */
            invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
            astore 16 /* shadow */
        start local 16 // java.nio.ByteBuffer shadow
        22: .line 165
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 16 /* shadow */
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        23: .line 166
            aload 16 /* shadow */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
            pop
        24: .line 167
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 16 /* shadow */
            invokevirtual sun.nio.ch.IOVecWrapper.setShadow:(ILjava/nio/ByteBuffer;)V
        25: .line 168
            aload 12 /* buf */
            iload 13 /* pos */
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        26: .line 169
            aload 16 /* shadow */
            astore 12 /* buf */
        27: .line 170
            aload 16 /* shadow */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 13 /* pos */
        end local 16 // java.nio.ByteBuffer shadow
        28: .line 173
      StackMap locals:
      StackMap stack:
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 12 /* buf */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 13 /* pos */
            i2l
            ladd
            invokevirtual sun.nio.ch.IOVecWrapper.putBase:(IJ)V
        29: .line 174
            aload 7 /* vec */
            iload 9 /* iov_len */
            iload 15 /* rem */
            i2l
            invokevirtual sun.nio.ch.IOVecWrapper.putLen:(IJ)V
        30: .line 175
            iinc 9 /* iov_len */ 1
        31: .line 177
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
        end local 15 // int rem
        end local 14 // int lim
        end local 13 // int pos
        end local 12 // java.nio.ByteBuffer buf
        32: .line 146
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            iload 11 /* i */
            iload 10 /* count */
            if_icmpge 33
            iload 9 /* iov_len */
            getstatic sun.nio.ch.IOUtil.IOV_MAX:I
            if_icmplt 6
        33: .line 179
      StackMap locals:
      StackMap stack:
            iload 9 /* iov_len */
            ifne 44
        34: .line 208
            iload 8 /* completed */
            ifne 43
        35: .line 209
            iconst_0
            istore 24 /* j */
        start local 24 // int j
        36: goto 42
        37: .line 210
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int top top top top top top top top top top top top int
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 25 /* shadow */
        start local 25 // java.nio.ByteBuffer shadow
        38: .line 211
            aload 25 /* shadow */
            ifnull 40
        39: .line 212
            aload 25 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        40: .line 213
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 25 // java.nio.ByteBuffer shadow
        41: .line 209
            iinc 24 /* j */ 1
      StackMap locals:
      StackMap stack:
        42: iload 24 /* j */
            iload 9 /* iov_len */
            if_icmplt 37
        end local 24 // int j
        43: .line 180
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            lconst_0
            lreturn
        44: .line 182
      StackMap locals:
      StackMap stack:
            aload 6 /* nd */
            aload 0 /* fd */
            aload 7 /* vec */
            getfield sun.nio.ch.IOVecWrapper.address:J
            iload 9 /* iov_len */
            invokevirtual sun.nio.ch.NativeDispatcher.writev:(Ljava/io/FileDescriptor;JI)J
            lstore 12 /* bytesWritten */
        start local 12 // long bytesWritten
        45: .line 185
            lload 12 /* bytesWritten */
            lstore 14 /* left */
        start local 14 // long left
        46: .line 186
            iconst_0
            istore 16 /* j */
        start local 16 // int j
        47: goto 62
        48: .line 187
      StackMap locals: long long int
      StackMap stack:
            lload 14 /* left */
            lconst_0
            lcmp
            ifle 57
        49: .line 188
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getBuffer:(I)Ljava/nio/ByteBuffer;
            astore 17 /* buf */
        start local 17 // java.nio.ByteBuffer buf
        50: .line 189
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getPosition:(I)I
            istore 18 /* pos */
        start local 18 // int pos
        51: .line 190
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getRemaining:(I)I
            istore 19 /* rem */
        start local 19 // int rem
        52: .line 191
            lload 14 /* left */
            iload 19 /* rem */
            i2l
            lcmp
            ifle 53
            iload 19 /* rem */
            goto 54
      StackMap locals: java.nio.ByteBuffer int int
      StackMap stack:
        53: lload 14 /* left */
            l2i
      StackMap locals:
      StackMap stack: int
        54: istore 20 /* n */
        start local 20 // int n
        55: .line 192
            aload 17 /* buf */
            iload 18 /* pos */
            iload 20 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        56: .line 193
            lload 14 /* left */
            iload 20 /* n */
            i2l
            lsub
            lstore 14 /* left */
        end local 20 // int n
        end local 19 // int rem
        end local 18 // int pos
        end local 17 // java.nio.ByteBuffer buf
        57: .line 196
      StackMap locals:
      StackMap stack:
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 17 /* shadow */
        start local 17 // java.nio.ByteBuffer shadow
        58: .line 197
            aload 17 /* shadow */
            ifnull 60
        59: .line 198
            aload 17 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        60: .line 199
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 17 // java.nio.ByteBuffer shadow
        61: .line 186
            iinc 16 /* j */ 1
      StackMap locals:
      StackMap stack:
        62: iload 16 /* j */
            iload 9 /* iov_len */
            if_icmplt 48
        end local 16 // int j
        63: .line 202
            iconst_1
            istore 8 /* completed */
        64: .line 203
            lload 12 /* bytesWritten */
            lstore 22
        65: .line 208
            iload 8 /* completed */
            ifne 74
        66: .line 209
            iconst_0
            istore 24 /* j */
        start local 24 // int j
        67: goto 73
        68: .line 210
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int long long top top top top top top long int
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 25 /* shadow */
        start local 25 // java.nio.ByteBuffer shadow
        69: .line 211
            aload 25 /* shadow */
            ifnull 71
        70: .line 212
            aload 25 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        71: .line 213
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 25 // java.nio.ByteBuffer shadow
        72: .line 209
            iinc 24 /* j */ 1
      StackMap locals:
      StackMap stack:
        73: iload 24 /* j */
            iload 9 /* iov_len */
            if_icmplt 68
        end local 24 // int j
        74: .line 203
      StackMap locals:
      StackMap stack:
            lload 22
            lreturn
        end local 14 // long left
        end local 12 // long bytesWritten
        end local 11 // int i
        end local 10 // int count
        75: .line 205
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int
      StackMap stack: java.lang.Throwable
            astore 21
        76: .line 208
            iload 8 /* completed */
            ifne 85
        77: .line 209
            iconst_0
            istore 24 /* j */
        start local 24 // int j
        78: goto 84
        79: .line 210
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int top top top top top top top top top top top java.lang.Throwable top top int
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 25 /* shadow */
        start local 25 // java.nio.ByteBuffer shadow
        80: .line 211
            aload 25 /* shadow */
            ifnull 82
        81: .line 212
            aload 25 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        82: .line 213
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 24 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 25 // java.nio.ByteBuffer shadow
        83: .line 209
            iinc 24 /* j */ 1
      StackMap locals:
      StackMap stack:
        84: iload 24 /* j */
            iload 9 /* iov_len */
            if_icmplt 79
        end local 24 // int j
        85: .line 216
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 21
            athrow
        end local 9 // int iov_len
        end local 8 // boolean completed
        end local 7 // sun.nio.ch.IOVecWrapper vec
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   86     0            fd  Ljava/io/FileDescriptor;
            0   86     1          bufs  [Ljava/nio/ByteBuffer;
            0   86     2        offset  I
            0   86     3        length  I
            0   86     4      directIO  Z
            0   86     5     alignment  I
            0   86     6            nd  Lsun/nio/ch/NativeDispatcher;
            1   86     7           vec  Lsun/nio/ch/IOVecWrapper;
            2   86     8     completed  Z
            3   86     9       iov_len  I
            4   75    10         count  I
            5   75    11             i  I
            7   32    12           buf  Ljava/nio/ByteBuffer;
            8   32    13           pos  I
            9   32    14           lim  I
           13   32    15           rem  I
           20   21    16        shadow  Ljava/nio/ByteBuffer;
           22   28    16        shadow  Ljava/nio/ByteBuffer;
           45   75    12  bytesWritten  J
           46   75    14          left  J
           47   63    16             j  I
           50   57    17           buf  Ljava/nio/ByteBuffer;
           51   57    18           pos  I
           52   57    19           rem  I
           55   57    20             n  I
           58   61    17        shadow  Ljava/nio/ByteBuffer;
           36   43    24             j  I
           67   74    24             j  I
           78   85    24             j  I
           38   41    25        shadow  Ljava/nio/ByteBuffer;
           69   72    25        shadow  Ljava/nio/ByteBuffer;
           80   83    25        shadow  Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           3    34      75  any
          44    65      75  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      bufs       
      offset     
      length     
      directIO   
      alignment  
      nd         

  static int read(java.io.FileDescriptor, java.nio.ByteBuffer, long, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JLsun/nio/ch/NativeDispatcher;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer dst
        start local 2 // long position
        start local 4 // sun.nio.ch.NativeDispatcher nd
         0: .line 223
            aload 0 /* fd */
            aload 1 /* dst */
            lload 2 /* position */
            iconst_0
            iconst_m1
            aload 4 /* nd */
            invokestatic sun.nio.ch.IOUtil.read:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            ireturn
        end local 4 // sun.nio.ch.NativeDispatcher nd
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0        fd  Ljava/io/FileDescriptor;
            0    1     1       dst  Ljava/nio/ByteBuffer;
            0    1     2  position  J
            0    1     4        nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      fd        
      dst       
      position  
      nd        

  static int read(java.io.FileDescriptor, java.nio.ByteBuffer, long, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=12, args_size=6
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer dst
        start local 2 // long position
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 230
            aload 1 /* dst */
            invokevirtual java.nio.ByteBuffer.isReadOnly:()Z
            ifeq 2
         1: .line 231
            new java.lang.IllegalArgumentException
            dup
            ldc "Read-only buffer"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 232
      StackMap locals:
      StackMap stack:
            aload 1 /* dst */
            instanceof sun.nio.ch.DirectBuffer
            ifeq 4
         3: .line 233
            aload 0 /* fd */
            aload 1 /* dst */
            lload 2 /* position */
            iload 4 /* directIO */
            iload 5 /* alignment */
            aload 6 /* nd */
            invokestatic sun.nio.ch.IOUtil.readIntoNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            ireturn
         4: .line 237
      StackMap locals:
      StackMap stack:
            aload 1 /* dst */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            istore 8 /* rem */
        start local 8 // int rem
         5: .line 238
            iload 4 /* directIO */
            ifeq 9
         6: .line 239
            iload 8 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
         7: .line 240
            iload 8 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.getTemporaryAlignedDirectBuffer:(II)Ljava/nio/ByteBuffer;
            astore 7 /* bb */
        start local 7 // java.nio.ByteBuffer bb
         8: .line 241
            goto 10
        end local 7 // java.nio.ByteBuffer bb
         9: .line 242
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long int int sun.nio.ch.NativeDispatcher top int
      StackMap stack:
            iload 8 /* rem */
            invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
            astore 7 /* bb */
        start local 7 // java.nio.ByteBuffer bb
        10: .line 245
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long int int sun.nio.ch.NativeDispatcher java.nio.ByteBuffer int
      StackMap stack:
            aload 0 /* fd */
            aload 7 /* bb */
            lload 2 /* position */
            iload 4 /* directIO */
            iload 5 /* alignment */
            aload 6 /* nd */
            invokestatic sun.nio.ch.IOUtil.readIntoNativeBuffer:(Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
            istore 9 /* n */
        start local 9 // int n
        11: .line 246
            aload 7 /* bb */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/ByteBuffer;
            pop
        12: .line 247
            iload 9 /* n */
            ifle 14
        13: .line 248
            aload 1 /* dst */
            aload 7 /* bb */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        14: .line 249
      StackMap locals: int
      StackMap stack:
            iload 9 /* n */
            istore 11
        15: .line 251
            aload 7 /* bb */
            invokestatic sun.nio.ch.Util.offerFirstTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        16: .line 249
            iload 11
            ireturn
        end local 9 // int n
        17: .line 250
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer long int int sun.nio.ch.NativeDispatcher java.nio.ByteBuffer int
      StackMap stack: java.lang.Throwable
            astore 10
        18: .line 251
            aload 7 /* bb */
            invokestatic sun.nio.ch.Util.offerFirstTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        19: .line 252
            aload 10
            athrow
        end local 8 // int rem
        end local 7 // java.nio.ByteBuffer bb
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0         fd  Ljava/io/FileDescriptor;
            0   20     1        dst  Ljava/nio/ByteBuffer;
            0   20     2   position  J
            0   20     4   directIO  Z
            0   20     5  alignment  I
            0   20     6         nd  Lsun/nio/ch/NativeDispatcher;
            8    9     7         bb  Ljava/nio/ByteBuffer;
           10   20     7         bb  Ljava/nio/ByteBuffer;
            5   20     8        rem  I
           11   17     9          n  I
      Exception table:
        from    to  target  type
          10    15      17  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      dst        
      position   
      directIO   
      alignment  
      nd         

  private static int readIntoNativeBuffer(java.io.FileDescriptor, java.nio.ByteBuffer, long, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;Ljava/nio/ByteBuffer;JZILsun/nio/ch/NativeDispatcher;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=11, args_size=6
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer bb
        start local 2 // long position
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 260
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 7 /* pos */
        start local 7 // int pos
         1: .line 261
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 8 /* lim */
        start local 8 // int lim
         2: .line 262
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 3
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmple 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 263
      StackMap locals: int int
      StackMap stack:
            iload 7 /* pos */
            iload 8 /* lim */
            if_icmpgt 4
            iload 8 /* lim */
            iload 7 /* pos */
            isub
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 9 /* rem */
        start local 9 // int rem
         6: .line 265
            iload 4 /* directIO */
            ifeq 9
         7: .line 266
            aload 1 /* bb */
            iload 7 /* pos */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkBufferPositionAligned:(Ljava/nio/ByteBuffer;II)V
         8: .line 267
            iload 9 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
         9: .line 270
      StackMap locals: int
      StackMap stack:
            iload 9 /* rem */
            ifne 11
        10: .line 271
            iconst_0
            ireturn
        11: .line 272
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 10 /* n */
        start local 10 // int n
        12: .line 273
            lload 2 /* position */
            ldc -1
            lcmp
            ifeq 15
        13: .line 274
            aload 6 /* nd */
            aload 0 /* fd */
            aload 1 /* bb */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 7 /* pos */
            i2l
            ladd
            iload 9 /* rem */
            lload 2 /* position */
            invokevirtual sun.nio.ch.NativeDispatcher.pread:(Ljava/io/FileDescriptor;JIJ)I
            istore 10 /* n */
        14: .line 275
            goto 16
        15: .line 276
      StackMap locals: int
      StackMap stack:
            aload 6 /* nd */
            aload 0 /* fd */
            aload 1 /* bb */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 7 /* pos */
            i2l
            ladd
            iload 9 /* rem */
            invokevirtual sun.nio.ch.NativeDispatcher.read:(Ljava/io/FileDescriptor;JI)I
            istore 10 /* n */
        16: .line 278
      StackMap locals:
      StackMap stack:
            iload 10 /* n */
            ifle 18
        17: .line 279
            aload 1 /* bb */
            iload 7 /* pos */
            iload 10 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        18: .line 280
      StackMap locals:
      StackMap stack:
            iload 10 /* n */
            ireturn
        end local 10 // int n
        end local 9 // int rem
        end local 8 // int lim
        end local 7 // int pos
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 2 // long position
        end local 1 // java.nio.ByteBuffer bb
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0         fd  Ljava/io/FileDescriptor;
            0   19     1         bb  Ljava/nio/ByteBuffer;
            0   19     2   position  J
            0   19     4   directIO  Z
            0   19     5  alignment  I
            0   19     6         nd  Lsun/nio/ch/NativeDispatcher;
            1   19     7        pos  I
            2   19     8        lim  I
            6   19     9        rem  I
           12   19    10          n  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      bb         
      position   
      directIO   
      alignment  
      nd         

  static long read(java.io.FileDescriptor, java.nio.ByteBuffer[], sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;Lsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // sun.nio.ch.NativeDispatcher nd
         0: .line 286
            aload 0 /* fd */
            aload 1 /* bufs */
            iconst_0
            aload 1 /* bufs */
            arraylength
            iconst_0
            iconst_m1
            aload 2 /* nd */
            invokestatic sun.nio.ch.IOUtil.read:(Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
            lreturn
        end local 2 // sun.nio.ch.NativeDispatcher nd
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    fd  Ljava/io/FileDescriptor;
            0    1     1  bufs  [Ljava/nio/ByteBuffer;
            0    1     2    nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    
      bufs  
      nd    

  static long read(java.io.FileDescriptor, java.nio.ByteBuffer[], int, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IILsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // int offset
        start local 3 // int length
        start local 4 // sun.nio.ch.NativeDispatcher nd
         0: .line 293
            aload 0 /* fd */
            aload 1 /* bufs */
            iload 2 /* offset */
            iload 3 /* length */
            iconst_0
            iconst_m1
            aload 4 /* nd */
            invokestatic sun.nio.ch.IOUtil.read:(Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
            lreturn
        end local 4 // sun.nio.ch.NativeDispatcher nd
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0      fd  Ljava/io/FileDescriptor;
            0    1     1    bufs  [Ljava/nio/ByteBuffer;
            0    1     2  offset  I
            0    1     3  length  I
            0    1     4      nd  Lsun/nio/ch/NativeDispatcher;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      fd      
      bufs    
      offset  
      length  
      nd      

  static long read(java.io.FileDescriptor, java.nio.ByteBuffer[], int, int, boolean, int, sun.nio.ch.NativeDispatcher);
    descriptor: (Ljava/io/FileDescriptor;[Ljava/nio/ByteBuffer;IIZILsun/nio/ch/NativeDispatcher;)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=27, args_size=7
        start local 0 // java.io.FileDescriptor fd
        start local 1 // java.nio.ByteBuffer[] bufs
        start local 2 // int offset
        start local 3 // int length
        start local 4 // boolean directIO
        start local 5 // int alignment
        start local 6 // sun.nio.ch.NativeDispatcher nd
         0: .line 300
            iload 3 /* length */
            invokestatic sun.nio.ch.IOVecWrapper.get:(I)Lsun/nio/ch/IOVecWrapper;
            astore 7 /* vec */
        start local 7 // sun.nio.ch.IOVecWrapper vec
         1: .line 302
            iconst_0
            istore 8 /* completed */
        start local 8 // boolean completed
         2: .line 303
            iconst_0
            istore 9 /* iov_len */
        start local 9 // int iov_len
         3: .line 307
            iload 2 /* offset */
            iload 3 /* length */
            iadd
            istore 10 /* count */
        start local 10 // int count
         4: .line 308
            iload 2 /* offset */
            istore 11 /* i */
        start local 11 // int i
         5: .line 309
            goto 31
         6: .line 310
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            aload 1 /* bufs */
            iload 11 /* i */
            aaload
            astore 12 /* buf */
        start local 12 // java.nio.ByteBuffer buf
         7: .line 311
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.isReadOnly:()Z
            ifeq 9
         8: .line 312
            new java.lang.IllegalArgumentException
            dup
            ldc "Read-only buffer"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 313
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 13 /* pos */
        start local 13 // int pos
        10: .line 314
            aload 12 /* buf */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 14 /* lim */
        start local 14 // int lim
        11: .line 315
            getstatic sun.nio.ch.IOUtil.$assertionsDisabled:Z
            ifne 12
            iload 13 /* pos */
            iload 14 /* lim */
            if_icmple 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 316
      StackMap locals: int int
      StackMap stack:
            iload 13 /* pos */
            iload 14 /* lim */
            if_icmpgt 13
            iload 14 /* lim */
            iload 13 /* pos */
            isub
            goto 14
      StackMap locals:
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 15 /* rem */
        start local 15 // int rem
        15: .line 318
            iload 4 /* directIO */
            ifeq 17
        16: .line 319
            iload 15 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.checkRemainingBufferSizeAligned:(II)V
        17: .line 321
      StackMap locals: int
      StackMap stack:
            iload 15 /* rem */
            ifle 30
        18: .line 322
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 12 /* buf */
            iload 13 /* pos */
            iload 15 /* rem */
            invokevirtual sun.nio.ch.IOVecWrapper.setBuffer:(ILjava/nio/ByteBuffer;II)V
        19: .line 325
            aload 12 /* buf */
            instanceof sun.nio.ch.DirectBuffer
            ifne 27
        20: .line 327
            iload 4 /* directIO */
            ifeq 23
        21: .line 328
            iload 15 /* rem */
            iload 5 /* alignment */
            invokestatic sun.nio.ch.Util.getTemporaryAlignedDirectBuffer:(II)Ljava/nio/ByteBuffer;
            astore 16 /* shadow */
        start local 16 // java.nio.ByteBuffer shadow
        22: .line 329
            goto 24
        end local 16 // java.nio.ByteBuffer shadow
        23: .line 330
      StackMap locals:
      StackMap stack:
            iload 15 /* rem */
            invokestatic sun.nio.ch.Util.getTemporaryDirectBuffer:(I)Ljava/nio/ByteBuffer;
            astore 16 /* shadow */
        start local 16 // java.nio.ByteBuffer shadow
        24: .line 332
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 16 /* shadow */
            invokevirtual sun.nio.ch.IOVecWrapper.setShadow:(ILjava/nio/ByteBuffer;)V
        25: .line 333
            aload 16 /* shadow */
            astore 12 /* buf */
        26: .line 334
            aload 16 /* shadow */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 13 /* pos */
        end local 16 // java.nio.ByteBuffer shadow
        27: .line 337
      StackMap locals:
      StackMap stack:
            aload 7 /* vec */
            iload 9 /* iov_len */
            aload 12 /* buf */
            checkcast sun.nio.ch.DirectBuffer
            invokeinterface sun.nio.ch.DirectBuffer.address:()J
            iload 13 /* pos */
            i2l
            ladd
            invokevirtual sun.nio.ch.IOVecWrapper.putBase:(IJ)V
        28: .line 338
            aload 7 /* vec */
            iload 9 /* iov_len */
            iload 15 /* rem */
            i2l
            invokevirtual sun.nio.ch.IOVecWrapper.putLen:(IJ)V
        29: .line 339
            iinc 9 /* iov_len */ 1
        30: .line 341
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
        end local 15 // int rem
        end local 14 // int lim
        end local 13 // int pos
        end local 12 // java.nio.ByteBuffer buf
        31: .line 309
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            iload 11 /* i */
            iload 10 /* count */
            if_icmpge 32
            iload 9 /* iov_len */
            getstatic sun.nio.ch.IOUtil.IOV_MAX:I
            if_icmplt 6
        32: .line 343
      StackMap locals:
      StackMap stack:
            iload 9 /* iov_len */
            ifne 43
        33: .line 376
            iload 8 /* completed */
            ifne 42
        34: .line 377
            iconst_0
            istore 25 /* j */
        start local 25 // int j
        35: goto 41
        36: .line 378
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int top top top top top top top top top top top top top int
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 26 /* shadow */
        start local 26 // java.nio.ByteBuffer shadow
        37: .line 379
            aload 26 /* shadow */
            ifnull 39
        38: .line 380
            aload 26 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        39: .line 381
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 26 // java.nio.ByteBuffer shadow
        40: .line 377
            iinc 25 /* j */ 1
      StackMap locals:
      StackMap stack:
        41: iload 25 /* j */
            iload 9 /* iov_len */
            if_icmplt 36
        end local 25 // int j
        42: .line 344
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int
      StackMap stack:
            lconst_0
            lreturn
        43: .line 346
      StackMap locals:
      StackMap stack:
            aload 6 /* nd */
            aload 0 /* fd */
            aload 7 /* vec */
            getfield sun.nio.ch.IOVecWrapper.address:J
            iload 9 /* iov_len */
            invokevirtual sun.nio.ch.NativeDispatcher.readv:(Ljava/io/FileDescriptor;JI)J
            lstore 12 /* bytesRead */
        start local 12 // long bytesRead
        44: .line 349
            lload 12 /* bytesRead */
            lstore 14 /* left */
        start local 14 // long left
        45: .line 350
            iconst_0
            istore 16 /* j */
        start local 16 // int j
        46: goto 65
        47: .line 351
      StackMap locals: long long int
      StackMap stack:
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 17 /* shadow */
        start local 17 // java.nio.ByteBuffer shadow
        48: .line 352
            lload 14 /* left */
            lconst_0
            lcmp
            ifle 61
        49: .line 353
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getBuffer:(I)Ljava/nio/ByteBuffer;
            astore 18 /* buf */
        start local 18 // java.nio.ByteBuffer buf
        50: .line 354
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getRemaining:(I)I
            istore 19 /* rem */
        start local 19 // int rem
        51: .line 355
            lload 14 /* left */
            iload 19 /* rem */
            i2l
            lcmp
            ifle 52
            iload 19 /* rem */
            goto 53
      StackMap locals: java.nio.ByteBuffer java.nio.ByteBuffer int
      StackMap stack:
        52: lload 14 /* left */
            l2i
      StackMap locals:
      StackMap stack: int
        53: istore 20 /* n */
        start local 20 // int n
        54: .line 356
            aload 17 /* shadow */
            ifnonnull 58
        55: .line 357
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getPosition:(I)I
            istore 21 /* pos */
        start local 21 // int pos
        56: .line 358
            aload 18 /* buf */
            iload 21 /* pos */
            iload 20 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        end local 21 // int pos
        57: .line 359
            goto 60
        58: .line 360
      StackMap locals: int
      StackMap stack:
            aload 17 /* shadow */
            aload 17 /* shadow */
            invokevirtual java.nio.ByteBuffer.position:()I
            iload 20 /* n */
            iadd
            invokevirtual java.nio.ByteBuffer.limit:(I)Ljava/nio/ByteBuffer;
            pop
        59: .line 361
            aload 18 /* buf */
            aload 17 /* shadow */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        60: .line 363
      StackMap locals:
      StackMap stack:
            lload 14 /* left */
            iload 20 /* n */
            i2l
            lsub
            lstore 14 /* left */
        end local 20 // int n
        end local 19 // int rem
        end local 18 // java.nio.ByteBuffer buf
        61: .line 365
      StackMap locals:
      StackMap stack:
            aload 17 /* shadow */
            ifnull 63
        62: .line 366
            aload 17 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        63: .line 367
      StackMap locals:
      StackMap stack:
            aload 7 /* vec */
            iload 16 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 17 // java.nio.ByteBuffer shadow
        64: .line 350
            iinc 16 /* j */ 1
      StackMap locals:
      StackMap stack:
        65: iload 16 /* j */
            iload 9 /* iov_len */
            if_icmplt 47
        end local 16 // int j
        66: .line 370
            iconst_1
            istore 8 /* completed */
        67: .line 371
            lload 12 /* bytesRead */
            lstore 23
        68: .line 376
            iload 8 /* completed */
            ifne 77
        69: .line 377
            iconst_0
            istore 25 /* j */
        start local 25 // int j
        70: goto 76
        71: .line 378
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int int int long long top top top top top top top long int
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 26 /* shadow */
        start local 26 // java.nio.ByteBuffer shadow
        72: .line 379
            aload 26 /* shadow */
            ifnull 74
        73: .line 380
            aload 26 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        74: .line 381
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 26 // java.nio.ByteBuffer shadow
        75: .line 377
            iinc 25 /* j */ 1
      StackMap locals:
      StackMap stack:
        76: iload 25 /* j */
            iload 9 /* iov_len */
            if_icmplt 71
        end local 25 // int j
        77: .line 371
      StackMap locals:
      StackMap stack:
            lload 23
            lreturn
        end local 14 // long left
        end local 12 // long bytesRead
        end local 11 // int i
        end local 10 // int count
        78: .line 373
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int
      StackMap stack: java.lang.Throwable
            astore 22
        79: .line 376
            iload 8 /* completed */
            ifne 88
        80: .line 377
            iconst_0
            istore 25 /* j */
        start local 25 // int j
        81: goto 87
        82: .line 378
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int top top top top top top top top top top top top java.lang.Throwable top top int
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.getShadow:(I)Ljava/nio/ByteBuffer;
            astore 26 /* shadow */
        start local 26 // java.nio.ByteBuffer shadow
        83: .line 379
            aload 26 /* shadow */
            ifnull 85
        84: .line 380
            aload 26 /* shadow */
            invokestatic sun.nio.ch.Util.offerLastTemporaryDirectBuffer:(Ljava/nio/ByteBuffer;)V
        85: .line 381
      StackMap locals: java.nio.ByteBuffer
      StackMap stack:
            aload 7 /* vec */
            iload 25 /* j */
            invokevirtual sun.nio.ch.IOVecWrapper.clearRefs:(I)V
        end local 26 // java.nio.ByteBuffer shadow
        86: .line 377
            iinc 25 /* j */ 1
      StackMap locals:
      StackMap stack:
        87: iload 25 /* j */
            iload 9 /* iov_len */
            if_icmplt 82
        end local 25 // int j
        88: .line 384
      StackMap locals: java.io.FileDescriptor java.nio.ByteBuffer[] int int int int sun.nio.ch.NativeDispatcher sun.nio.ch.IOVecWrapper int int top top top top top top top top top top top top java.lang.Throwable
      StackMap stack:
            aload 22
            athrow
        end local 9 // int iov_len
        end local 8 // boolean completed
        end local 7 // sun.nio.ch.IOVecWrapper vec
        end local 6 // sun.nio.ch.NativeDispatcher nd
        end local 5 // int alignment
        end local 4 // boolean directIO
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] bufs
        end local 0 // java.io.FileDescriptor fd
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   89     0         fd  Ljava/io/FileDescriptor;
            0   89     1       bufs  [Ljava/nio/ByteBuffer;
            0   89     2     offset  I
            0   89     3     length  I
            0   89     4   directIO  Z
            0   89     5  alignment  I
            0   89     6         nd  Lsun/nio/ch/NativeDispatcher;
            1   89     7        vec  Lsun/nio/ch/IOVecWrapper;
            2   89     8  completed  Z
            3   89     9    iov_len  I
            4   78    10      count  I
            5   78    11          i  I
            7   31    12        buf  Ljava/nio/ByteBuffer;
           10   31    13        pos  I
           11   31    14        lim  I
           15   31    15        rem  I
           22   23    16     shadow  Ljava/nio/ByteBuffer;
           24   27    16     shadow  Ljava/nio/ByteBuffer;
           44   78    12  bytesRead  J
           45   78    14       left  J
           46   66    16          j  I
           48   64    17     shadow  Ljava/nio/ByteBuffer;
           50   61    18        buf  Ljava/nio/ByteBuffer;
           51   61    19        rem  I
           54   61    20          n  I
           56   57    21        pos  I
           35   42    25          j  I
           70   77    25          j  I
           81   88    25          j  I
           37   40    26     shadow  Ljava/nio/ByteBuffer;
           72   75    26     shadow  Ljava/nio/ByteBuffer;
           83   86    26     shadow  Ljava/nio/ByteBuffer;
      Exception table:
        from    to  target  type
           3    33      78  any
          43    68      78  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      fd         
      bufs       
      offset     
      length     
      directIO   
      alignment  
      nd         

  public static java.io.FileDescriptor newFD(int);
    descriptor: (I)Ljava/io/FileDescriptor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // int i
         0: .line 388
            new java.io.FileDescriptor
            dup
            invokespecial java.io.FileDescriptor.<init>:()V
            astore 1 /* fd */
        start local 1 // java.io.FileDescriptor fd
         1: .line 389
            aload 1 /* fd */
            iload 0 /* i */
            invokestatic sun.nio.ch.IOUtil.setfdVal:(Ljava/io/FileDescriptor;I)V
         2: .line 390
            aload 1 /* fd */
            areturn
        end local 1 // java.io.FileDescriptor fd
        end local 0 // int i
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     i  I
            1    3     1    fd  Ljava/io/FileDescriptor;
    MethodParameters:
      Name  Flags
      i     

  static native boolean randomBytes(byte[]);
    descriptor: ([B)Z
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    MethodParameters:
           Name  Flags
      someBytes  

  static native long makePipe(boolean);
    descriptor: (Z)J
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      blocking  

  static native int write1(int, byte);
    descriptor: (IB)I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    
      b     

  static native boolean drain(int);
    descriptor: (I)Z
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  static native int drain1(int);
    descriptor: (I)I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      fd    

  public static native void configureBlocking(java.io.FileDescriptor, boolean);
    descriptor: (Ljava/io/FileDescriptor;Z)V
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      fd        
      blocking  

  public static native int fdVal(java.io.FileDescriptor);
    descriptor: (Ljava/io/FileDescriptor;)I
    flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      fd    

  static native void setfdVal(java.io.FileDescriptor, int);
    descriptor: (Ljava/io/FileDescriptor;I)V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE
    MethodParameters:
       Name  Flags
      fd     
      value  

  static native int fdLimit();
    descriptor: ()I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native int iovMax();
    descriptor: ()I
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  static native void initIDs();
    descriptor: ()V
    flags: (0x0108) ACC_STATIC, ACC_NATIVE

  public static void load();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=0, locals=0, args_size=0
         0: .line 432
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "IOUtil.java"
NestMembers:
  sun.nio.ch.IOUtil$1
InnerClasses:
  sun.nio.ch.IOUtil$1