Refactored one more time