@Override
      public Result construct() {
        LOG.debug("Start calculation in " + AbstractStepWithProgress.this + " using worker " + toString());
        final Ref<Result> result = Ref.create(null);
        try {
          ProgressManager.getInstance().runProcess(() -> result.set(calculate()), progress);
          LOG.debug("Finish calculation in " + AbstractStepWithProgress.this + " using worker " + toString());
        }
        catch (ProcessCanceledException e) {
          LOG.debug("Calculation in " + AbstractStepWithProgress.this + " was cancelled");
        }
        return result.get();
      }
@Override
      public Result construct()