static @NotNull TextEditorHighlightingPass createLineMarkersPass(@NotNull PsiFile file, @NotNull Editor editor, @NotNull LineMarkersPass.Mode myMode,
                                                                   int passId) {
    TextRange dirtyTextRange = FileStatusMap.getDirtyTextRange(editor.getDocument(), file, passId);
    Document document = editor.getDocument();
    Project project = file.getProject();
    if (dirtyTextRange == null || myMode == LineMarkersPass.Mode.NONE) {
      return new ProgressableTextEditorHighlightingPass.EmptyPass(project, document);
    }

    HighlightingSession session = HighlightingSessionImpl.getFromCurrentIndicator(file);
    ProperTextRange visibleRange = session.getVisibleRange();
    TextRange priorityBounds = expandRangeToCoverWholeLines(document, visibleRange);
    TextRange restrictRange = expandRangeToCoverWholeLines(document, dirtyTextRange);
    return new LineMarkersPass(project, file, document, priorityBounds, restrictRange, myMode, session);
  }
static @NotNull TextEditorHighlightingPass createLineMarkersPass(@NotNull PsiFile file, @NotNull Editor editor, @NotNull LineMarkersPass.Mode myMode,
                                                                   int passId)