exercise 2.1-4
exercise 2.2-2