added the ability to edit and update