@Override
  protected <T> @NotNull RunnableFuture<T> newTaskFor(@NotNull Runnable runnable, T value) {
    return newTaskFor(Executors.callable(runnable, value));
  }
@Override
  protected <T> @NotNull RunnableFuture<T> newTaskFor(@NotNull Runnable runnable, T value)