Ex. 4.3 implemented.
Built exercise 4.