Finished solution to problem 2