(Chapter 15) : source from text.

for exercise 4
(Chapter 15) : finished