docs: static int getRequiredItemCapacity(final int k, final long newN) {
      final int numLevelsNeeded = Util.computeNumLevelsNeeded(k, newN);
      if (numLevelsNeeded == 0) {
        // don't need any levels yet, and might have small base buffer; this can happen during a merge
        return 2 * k;
      }
      // from here on we need a full-size base buffer and at least one level
      assert newN >= (2L * k);
      assert numLevelsNeeded > 0;
      final int spaceNeeded = (2 + numLevelsNeeded) * k;
      return spaceNeeded;
    }