@Deprecated
  void updateFileLevelHighlights(@NotNull List<? extends HighlightInfo> fileLevelHighlights, int group, boolean cleanOldHighlights, @NotNull HighlightersRecycler recycler) {
    Project project = getProject();
    DaemonCodeAnalyzerEx codeAnalyzer = DaemonCodeAnalyzerEx.getInstanceEx(project);
    PsiFile psiFile = getPsiFile();
    boolean shouldUpdate = !fileLevelHighlights.isEmpty() || codeAnalyzer.hasFileLevelHighlights(group, psiFile);
    if (shouldUpdate) {
      List<RangeHighlighter> reusedHighligters = ContainerUtil.map(fileLevelHighlights, __->recycler.pickupFileLevelRangeHighlighter(psiFile.getTextLength()));

      Future<?> future = EdtExecutorService.getInstance().submit(() -> {
        if (project.isDisposed() || isCanceled()) return;
        if (cleanOldHighlights) {
          codeAnalyzer.cleanFileLevelHighlights(group, psiFile);
        }
        for (int i = 0; i < fileLevelHighlights.size(); i++) {
          HighlightInfo fileLevelInfo = fileLevelHighlights.get(i);
          RangeHighlighter reused = reusedHighligters.get(i);
          codeAnalyzer.addFileLevelHighlight(group, fileLevelInfo, psiFile, reused);
        }
      });
      pendingFileLevelHighlightRequests.add((RunnableFuture<?>)future);
    }
  }
@Deprecated
  void updateFileLevelHighlights(@NotNull List<? extends HighlightInfo> fileLevelHighlights, int group, boolean cleanOldHighlights, @NotNull HighlightersRecycler recycler)