public void writeBytes(final byte[] bytes,final int off,final int len){
  if (len > remaining()) {
    writeBytesSlow(bytes,off,len);
    return;
  }
  final Block block=current;
  System.arraycopy(bytes,off,block.data,block.limit,len);
  block.limit+=len;
}

public void writeBytes ( final byte [ ] bytes , final int off , final int len ) { if ( len > remaining ( ) ) { writeBytesSlow ( bytes , off , len ) ; return ; } final Block block = current ; System . arraycopy ( bytes , off , block . data , block . limit , len ) ; block . limit += len ; }
writes an array of bytes to the buffer expanding if necessary .
