marriott refactored