private void processMethodsDuplicates() {
    ProgressManager.getInstance().runProcessWithProgressSynchronously(() -> ApplicationManager.getApplication().runReadAction(() -> {
      if (!myTargetSuperClass.isValid()) return;
      final Query<PsiClass> search = ClassInheritorsSearch.search(myTargetSuperClass);
      final Set<VirtualFile> hierarchyFiles = new HashSet<>();
      for (PsiClass aClass : search) {
        final PsiFile containingFile = aClass.getContainingFile();
        if (containingFile != null) {
          final VirtualFile virtualFile = containingFile.getVirtualFile();
          if (virtualFile != null) {
            hierarchyFiles.add(virtualFile);
          }
        }
      }
      final Set<PsiMember> methodsToSearchDuplicates = new HashSet<>();
      for (PsiMember psiMember : myMembersAfterMove) {
        if (psiMember instanceof PsiMethod && psiMember.isValid() && ((PsiMethod)psiMember).getBody() != null) {
          methodsToSearchDuplicates.add(psiMember);
        }
      }

      MethodDuplicatesHandler.invokeOnScope(myProject, methodsToSearchDuplicates, new AnalysisScope(myProject, hierarchyFiles), true);
    }), MethodDuplicatesHandler.getRefactoringName(), true, myProject);
  }
private void processMethodsDuplicates()