@SuppressWarnings("unchecked")
  public static <R> Fallback<R> of(CheckedFunction<ExecutionAttemptedEvent<? extends R>, ? extends R> fallback) {
    return new Fallback<>(Assert.notNull((CheckedFunction) fallback, "fallback"), false);
  }
@ SuppressWarnings ( "unchecked" ) public static < R > Fallback < R > of ( CheckedFunction < ExecutionAttemptedEvent < ? extends R > , ? extends R > fallback ) { return new Fallback < > ( Assert . notNull ( ( CheckedFunction ) fallback , "fallback" ) , false ) ; }
Configures the {@code fallback} to be executed if execution fails. The {@code fallback} applies an {@link
ExecutionAttemptedEvent}.

@throws NullPointerException if {@code fallback} is null