Update need refactoring
