17 points for this solution