code: @NullSafe
    protected BloomFilter<T> newBloomFilter(int approximateNumberOfElements, float acceptableFalsePositiveRate) {
      return SimpleBloomFilter.of(approximateNumberOfElements, acceptableFalsePositiveRate);
    }
docs: Constructs a new instance of {@link BloomFilter} initialized with the given approximate, estimated number
  of elements and acceptable false positive rate.
  
  @param approximateNumberOfElements integer value indicating the approximate, estimated number of elements
  the user expects will be added to the returned {@link BloomFilter} instance.
  @param acceptableFalsePositiveRate a floating point value indicating the acceptable percentage of false positives
  returned by the constructed {@link BloomFilter}.
  @return a new instance of {@link BloomFilter}.
  @throws IllegalArgumentException if the {@code approximateNumberOfElements} is less than equal to 0
  or the {@code acceptableFalsePositiveRate} is less than equal to 0.0 or greater than equal to 1.0.
  @see org.cp.elements.data.struct.BloomFilter