exercises 3.5 #1 and #2
exercise 3.5 #3