Cleaned Up and Refactored