update : data storage / undo, transaction