exercise 8.2
exercise 8.3
exercise 8 DONE