Refactoring from Good to Great

Refactoring