update and edit