enhanced challenge text + DRY between challenge and solutions