@Override
  public @NotNull RangeHighlighter @NotNull [] getAllHighlighters() {
    RangeHighlighter[] cachedHighlighters = myCachedHighlighters;
    if (cachedHighlighters == null) {
      int size = myHighlighterTree.size() + myHighlighterTreeForLines.size();
      if (size == 0) return RangeHighlighter.EMPTY_ARRAY;
      List<RangeHighlighterEx> list = new ArrayList<>(size);
      CommonProcessors.CollectProcessor<RangeHighlighterEx> collectProcessor = new CommonProcessors.CollectProcessor<>(list);
      myHighlighterTree.processAll(collectProcessor);
      myHighlighterTreeForLines.processAll(collectProcessor);
      myCachedHighlighters = cachedHighlighters = list.toArray(RangeHighlighter.EMPTY_ARRAY);
    }
    return cachedHighlighters;
  }
@Override
  public @NotNull RangeHighlighter @NotNull [] getAllHighlighters()