@Override
  public synchronized boolean put(int key,
                                  int value) throws IOException {
    HashMapSegmentLayout segment = segmentForKey(key);

    return putAndSplitSegmentIfNeeded(segment, key, value);
  }
@Override
  public synchronized boolean put(int key,
                                  int value)