code: private BigInteger bigIntegerProduct()
      {
          return this.injectInto(BigInteger.valueOf(1L), new Function2<BigInteger, Integer, BigInteger>()
          {
              public BigInteger value(BigInteger result, Integer each)
              {
                  return result.multiply(BigInteger.valueOf(each.longValue()));
              }
          });
      }
docs: Returns the BigInteger result of calculating product for the range.