finished solution 7