code: public byte[] read(int offset, int length) throws IOException {
  		if (ensureBuffer(offset, length) >= length) {
  			final byte[] array = new byte[length];
  			System.arraycopy(this.buffer, offset, array, 0, length);
  			this.pos = offset + length;
  			return array;
  		}
  		throw new EOFException();
  	}
docs: Replies the bytes at the specified offset.
  
  @param offset is the position of the first byte to read.
  @param length is the count of bytes to read.
  @return the array of red bytes.
  @throws IOException in case of problems