docs: @SneakyThrows
      public static <R> Supplier<R> doIf(final boolean condition, final Supplier<R> trueFunction,
                                         final Supplier<R> falseFunction) {
          return () -> {
              try {
                  if (condition) {
                      return trueFunction.get();
                  }
                  return falseFunction.get();
              } catch (final Throwable e) {
                  LOGGER.warn(e.getMessage(), e);
                  return falseFunction.get();
              }
          };
      }