code: public static <T> Flux<T> concat(Iterable<? extends Publisher<? extends T>> sources) {
  		return onAssembly(new FluxConcatIterable<>(sources));
  	}
docs: Concatenate all sources provided in an {@link Iterable}, forwarding elements
  emitted by the sources downstream.
  <p>
  Concatenation is achieved by sequentially subscribing to the first source then
  waiting for it to complete before subscribing to the next, and so on until the
  last source completes. Any error interrupts the sequence immediately and is
  forwarded downstream.
  <p>
  <img class="marble" src="doc-files/marbles/concatVarSources.svg" alt="">
  
  @param sources The {@link Iterable} of {@link Publisher} to concatenate
  @param <T> The type of values in both source and output sequences
  
  @return a new {@link Flux} concatenating all source sequences