code: @SuppressWarnings({ "unchecked", "rawtypes" })
  	public static <T1, T2> Mono<Tuple2<T1, T2>> zipDelayError(Mono<? extends T1> p1, Mono<? extends T2> p2) {
  		return onAssembly(new MonoZip(true, a -> Tuples.fromArray((Object[])a), p1, p2));
  	}
docs: Merge given monos into a new {@literal Mono} that will be fulfilled when all of the given {@literal Monos}
  have produced an item, aggregating their values into a {@link Tuple2} and delaying errors.
  If a Mono source completes without value, the other source is run to completion then the
  resulting {@link Mono} completes empty.
  If both Monos error, the two exceptions are combined (as suppressed exceptions on a root exception).
  
  <p>
  <img class="marble" src="doc-files/marbles/zipDelayErrorFixedSources.svg" alt="">
  <p>
  @param p1 The first upstream {@link Publisher} to subscribe to.
  @param p2 The second upstream {@link Publisher} to subscribe to.
  @param <T1> type of the value from p1
  @param <T2> type of the value from p2
  
  @return a {@link Mono}.