class AbstractRetry implements Function<Flux<S>, Publisher<Long>> {

	Instant calculateTimeout() {
		return timeout != null ? Instant.now(clock).plus(timeout) : Instant.MAX;
	}

	  AbstractRetry(long maxIterations,
			Duration timeout,
			Backoff backoff,
			Jitter jitter,
			@Nullable
			Scheduler backoffScheduler,
			T applicationContext);

}