update and delete finished