implemented edit and update
Merge branch 'step_3' into step_4