Refactor^