Almost completed exercise 11.