update method refactor