code: public final Flux<T> repeat(long numRepeat, BooleanSupplier predicate) {
  		if (numRepeat < 0L) {
  			throw new IllegalArgumentException("numRepeat >= 0 required");
  		}
  		if (numRepeat == 0) {
  			return this;
  		}
  		return defer( () -> repeat(countingBooleanSupplier(predicate, numRepeat)));
  	}
docs: Repeatedly subscribe to the source if the predicate returns true after completion of the previous
  subscription. A specified maximum of repeat will limit the number of re-subscribe.
  
  <p>
  <img class="marble" src="doc-files/marbles/repeatWithAttemptsAndPredicateForFlux.svg" alt="">
  
  @param numRepeat the number of times to re-subscribe on complete (positive, or 0 for original sequence only)
  @param predicate the boolean to evaluate on onComplete
  
  @return a {@link Flux} that repeats on onComplete while the predicate matches,
  up to the specified number of repetitions