#13 combine update and cancel operate