code: public static <V, T> MutableMap<V, BigDecimal> sumByBigDecimal(Iterable<T> iterable, Function<T, V> groupBy, Function<? super T, BigDecimal> function)
      {
          if (iterable instanceof List)
          {
              return ListIterate.sumByBigDecimal((List<T>) iterable, groupBy, function);
          }
          if (iterable != null)
          {
              return IterableIterate.sumByBigDecimal(iterable, groupBy, function);
          }
          throw new IllegalArgumentException("Cannot perform an sumByBigDecimal on null");
      }
docs: Groups and sums the values of the iterable using the two specified functions.
  
  @since 6.0