docs: public static <T1, T2, R> Mono<R> zip(Mono<? extends T1> mono, Iterable<? extends T2> app,
              BiFunction<? super T1, ? super T2, ? extends R> fn) {
          return Mono.from(Future.of(mono.toFuture())
                                  .zip(app, fn));
      }