solve final question
add saving to user
add save and update methods