Refactored Model