@Override
    protected <T> RunnableFuture<T> newTaskFor(Callable<T> callable) {
      return capturePropagationAndCancellationContext(callable);
    }
@Override
    protected <T> RunnableFuture<T> newTaskFor(Callable<T> callable)