refactor number