@Override
  public void redo() throws UnexpectedUndoException {
    long timeStamp = myChangeRange.isMoved() ? createNextTimeStamp() : myNewTimeStamp;
    ImmutableActionChangeRange range = myChangeRange.getState();
    doChange(range.getOldDocumentLength(), myNewString, range.getNewDocumentLength(), timeStamp);
  }
@Override
  public void redo()