Solution 2 complete