solved exercise 19.3
solved exercise 19.4