@Override
    public void moveCaretTo(@NotNull PsiElement element) {
      TextRange range = getRange(element);
      if (range != null) {
        range = mapRange(range);
        myPositionUpdated = true;
        myCaretOffset = range.getStartOffset();
        myCaretVirtualEnd = range.getEndOffset();
      }
    }
@Override
    public void moveCaretTo(@NotNull PsiElement element)