some bug-fixing.. still have bugs on the undo of multi-modify