@Override
    public void select(@NotNull TextRange range) {
      myPositionUpdated = true;
      range = mapRange(range);
      mySelection = range;
      myCaretOffset = range.getStartOffset();
      myCaretVirtualEnd = range.getEndOffset();
    }
@Override
    public void select(@NotNull TextRange range)