implemented undo and redo for mass done&undone