code: @SuppressWarnings("restriction")
  	public final long getLong(int index) {
  		if (CHECKED) {
  			if (index >= 0 && index <= this.memory.length - 8) {
  				return UNSAFE.getLong(this.memory, BASE_OFFSET + index);
  			} else {
  				throw new IndexOutOfBoundsException();
  			}
  		} else {
  			return UNSAFE.getLong(this.memory, BASE_OFFSET + index);
  		}
  	}
docs: Reads a long value (64bit, 8 bytes) from the given position, in the system's native byte order.
  This method offers the best speed for long integer reading and should be used
  unless a specific byte order is required. In most cases, it suffices to know that the
  byte order in which the value is written is the same as the one in which it is read
  (such as transient storage in memory, or serialization for I/O and network), making this
  method the preferable choice.
  
  @param index The position from which the value will be read.
  @return The long value at the given position.
  
  @throws IndexOutOfBoundsException Thrown, if the index is negative, or larger then the segment
  size minus 8.