5.25. Solution: Cooking abstractions