refactor like a champ