@Override
  public void applyFix(@NotNull Project project,
                       CommonProblemDescriptor @NotNull [] descriptors,
                       @NotNull List<PsiElement> psiElementsToIgnore,
                       @Nullable Runnable refreshViews) {
    final List<I18nizedPropertyData<HardcodedStringInFormData>> dataList = new ArrayList<>();
    final HashSet<PsiFile> contextFiles = new HashSet<>();
    final Map<VirtualFile, RadRootContainer> containerMap = new HashMap<>();
    final Map<String, List<I18nizedPropertyData<HardcodedStringInFormData>>> duplicates = new HashMap<>();

    ReadAction
      .nonBlocking(() -> {
        fillDuplicates(project, descriptors, dataList, contextFiles, containerMap, duplicates);
        return I18nizeMultipleStringsDialog.getResourceBundleManager(project, contextFiles);
      })
      .finishOnUiThread(ModalityState.nonModal(), bundleManager -> {
        showI18nizeMultipleStringsDialog(project, dataList, contextFiles, bundleManager, containerMap, duplicates);
      })
      .submit(AppExecutorUtil.getAppExecutorService());
  }
@Override
  public void applyFix(@NotNull Project project,
                       CommonProblemDescriptor @NotNull [] descriptors,
                       @NotNull List<PsiElement> psiElementsToIgnore,
                       @Nullable Runnable refreshViews)