refactor constructed#update