code: public static <T> CompletableFuture<T> supplyAsync(SupplierWithException<T, ?> supplier, Executor executor) {
  		return CompletableFuture.supplyAsync(
  			() -> {
  				try {
  					return supplier.get();
  				} catch (Throwable e) {
  					throw new CompletionException(e);
  				}
  			},
  			executor);
  	}
docs: Returns a future which is completed with the result of the {@link SupplierWithException}.
  
  @param supplier to provide the future's value
  @param executor to execute the supplier
  @param <T> type of the result
  @return Future which is completed with the value of the supplier