Rewrote Exercise 4.4