FizzBuzz<BigInteger> fizzBuzzBigInteger = FizzBuzz.<BigInteger>builder(bi -> bi.add(BigInteger.ONE), (number, divisor) -> number.mod(divisor).compareTo(BigInteger.ZERO) == 0)
.add("Fizz", BigInteger.valueOf(3))
.add("Buzz", BigInteger.valueOf(5))
.build();
fizzBuzzBigInteger.rangeFrom(BigInteger.ONE).limit(100).forEach(System.out::println);