reactor-core/src/main/java/reactor/core/publisher/FluxFirstEmitting.java
@Nullable
	FluxFirstEmitting<T> ambAdditionalSource(Publisher<? extends T> source) {
		if (array != null) {
			int n = array.length;
			@SuppressWarnings("unchecked") Publisher<? extends T>[] newArray =
					new Publisher[n + 1];
			System.arraycopy(array, 0, newArray, 0, n);
			newArray[n] = source;

			return new FluxFirstEmitting<>(newArray);
		}
		return null;
	}
@Nullable
	FluxFirstEmitting<T> ambAdditionalSource(Publisher<? extends T> source) {
		if (array != null) {
			int n = array.length;
			@SuppressWarnings("unchecked") Publisher<? extends T>[] newArray =
					new Publisher[n + 1];
			System.arraycopy(array, 0, newArray, 0, n);
			newArray[n] = source;

			return new FluxFirstEmitting<>(newArray);
		}
		return null;
	}
Returns a new instance which has the additional source to be amb'd together with
the current array of sources.
<p>
This operation doesn't change the current FluxFirstEmitting instance.

@param source the new source to merge with the others

@return the new FluxFirstEmitting instance or null if the Amb runs with an Iterable