class MultiReduceFull extends CompletionSingle<R> {

    @Override
    public void subscribe(Flow.Subscriber<? super R> subscriber) {
        R initial;
        try {
            initial = Objects.requireNonNull(supplier.get(),
                    "The supplier returned a null item");
        } catch (Throwable ex) {
            subscriber.onSubscribe(EmptySubscription.INSTANCE);
            subscriber.onError(ex);
            return;
        }
        source.subscribe(new ReduceFullSubscriber<>(subscriber, initial, reducer));
    }

      MultiReduceFull(Multi<T> source, Supplier<? extends R> supplier, BiFunction<R, T, R> reducer);

}