code: public final <U> ParallelFlux<U> composeGroup(Function<? super GroupedFlux<Integer, T>,
  			? extends Publisher<? extends U>> composer) {
  		if (getPrefetch() > -1) {
  			return from(groups().flatMap(composer::apply),
  				parallelism(), getPrefetch(),
  				Queues.small());
  		}
  		else {
  			return from(groups().flatMap(composer::apply), parallelism());
  		}
  	}
docs: Allows composing operators off the 'rails', as individual {@link GroupedFlux} instances keyed by
  the zero based rail's index. The transformed groups are {@link Flux#parallel parallelized} back
  once the transformation has been applied.
  <p>
  Note that like in {@link #groups()}, requests and cancellation compose through, and
  cancelling only one rail may result in undefined behavior.
  
  @param composer the composition function to apply on each {@link GroupedFlux rail}
  @param <U> the type of the resulting parallelized flux
  @return a {@link ParallelFlux} of the composed groups