update refactoring