solution to problem #7