Refactored with Methods