Refactored sunshine model