Refactored to include join