finished solution 8