@Override
  void removeFileLevelHighlight(@NotNull PsiFile psiFile, @NotNull HighlightInfo info) {
    ThreadingAssertions.assertEventDispatchThread();
    assertMyFile(psiFile.getProject(), psiFile);
    VirtualFile vFile = BackedVirtualFile.getOriginFileIfBacked(psiFile.getViewProvider().getVirtualFile());
    for (FileEditor fileEditor : getFileEditorManager().getAllEditorList(vFile)) {
      List<HighlightInfo> infos = fileEditor.getUserData(FILE_LEVEL_HIGHLIGHTS);
      if (infos == null) {
        continue;
      }
      infos.removeIf(i-> {
        if (!info.attributesEqual(i)) {
          return false;
        }
        JComponent component = i.getFileLevelComponent(fileEditor);
        if (component != null) {
          getFileEditorManager().removeTopComponent(fileEditor, component);
          i.removeFileLeverComponent(fileEditor);
        }
        RangeHighlighterEx highlighter = i.highlighter;
        if (highlighter != null) {
          highlighter.dispose();
        }
        return true;
      });
      if (LOG.isDebugEnabled()) {
        LOG.debug("removeFileLevelHighlight [" + info + "]: fileLevelInfos:" + infos);
      }
    }
  }
@Override
  void removeFileLevelHighlight(@NotNull PsiFile psiFile, @NotNull HighlightInfo info)