working on update behaviour