code: @Override
  	public void insertOrReplaceRecord(T record) throws IOException {
  		if (closed) {
  			return;
  		}
  
  		T match = prober.getMatchFor(record, reuse);
  		if (match == null) {
  			prober.insertAfterNoMatch(record);
  		} else {
  			prober.updateMatch(record);
  		}
  	}
docs: Searches the hash table for a record with the given key.
  If it is found, then it is overridden with the specified record.
  Otherwise, the specified record is inserted.
  @param record The record to insert or to replace with.
  @throws IOException (EOFException specifically, if memory ran out)