private <T> T runNonBlocking(@NotNull Callable<? extends T> task, T defValue) {
    try {
      return ReadAction.nonBlocking(task).expireWith(this).executeSynchronously();
    }
    catch (ProcessCanceledException ex) {
      return defValue;
    }
  }
private <T> T runNonBlocking(@NotNull Callable<? extends T> task, T defValue)