Refactored for Unit Testing