Refactoring and Pulling Out my Hair