@Nullable
  public static <T> T compute(@NotNull ThrowableComputable<T, ? extends VcsException> computable,
                              @NotNull Project project,
                              @NotNull @Nls(capitalization = Nls.Capitalization.Title) String title) {
    final Ref<T> ref = new Ref<>();
    boolean notCanceled = wrap(() -> ref.set(computable.compute()), project, title);
    return notCanceled ? ref.get() : null;
  }
@Nullable
  public static <T> T compute(@NotNull ThrowableComputable<T, ? extends VcsException> computable,
                              @NotNull Project project,
                              @NotNull @Nls(capitalization = Nls.Capitalization.Title) String title)