Implment a solution to problem 7