undo & redo fixed