docs: public static <T> Callable<T> recover(Callable<T> callable, Function<Exception, T> exceptionHandler){
          return () -> {
              try{
                  return callable.call();
              }catch (Exception exception){
                  return exceptionHandler.apply(exception);
              }
          };
      }