Refactored after practice