docs: @Override
      public <T2, R1, R2, R3, R> Future<R> forEach4(Function<? super T, ? extends MonadicValue<R1>> value1,
                                                    BiFunction<? super T, ? super R1, ? extends MonadicValue<R2>> value2,
                                                    Function3<? super T, ? super R1, ? super R2, ? extends MonadicValue<R3>> value3,
                                                    Function4<? super T, ? super R1, ? super R2, ? super R3, ? extends R> yieldingFunction) {
          return (Future<R>)MonadicValue.super.forEach4(value1, value2, value3, yieldingFunction);
      }