private @NotNull DiffRequest createRequest(@Nullable Project project,
                                             @NotNull Change change,
                                             @NotNull UserDataHolder context,
                                             @NotNull ProgressIndicator indicator) throws DiffRequestProducerException {
    if (ChangesUtil.isTextConflictingChange(change)) { // three side diff
      return createMergeRequest(project, indicator, change, context);
    }

    SimpleDiffRequest request = createSimpleRequest(project, change, context, indicator);

    DiffRequest localRequest = createLocalChangeListRequest(project, change, request);
    if (localRequest != null) return localRequest;

    return request;
  }
private @NotNull DiffRequest createRequest(@Nullable Project project,
                                             @NotNull Change change,
                                             @NotNull UserDataHolder context,
                                             @NotNull ProgressIndicator indicator)