refactoring...BOOM!