code: public void setReadPosition(long pointer) {
  		final int bufferNum = (int) (pointer >>> this.segmentSizeBits);
  		final int offset = (int) (pointer & (this.memorySegmentSize - 1));
  		
  		this.currentBufferNum = bufferNum;
  		seekInput(this.partitionBuffers[bufferNum], offset,
  					bufferNum < this.partitionBuffers.length-1 ? this.memorySegmentSize : this.finalBufferLimit);
  		
  	}
docs: --------------------------------------------------------------------------------------------------