@Override
  public void runForEachCaret(@NotNull CaretAction action) {
    myCaretActionListeners.getMulticaster().beforeAllCaretsAction();
    action.perform(myCaret);
    myCaretActionListeners.getMulticaster().afterAllCaretsAction();
  }
@Override
  public void runForEachCaret(@NotNull CaretAction action)