a refactoring. getting better.