done through page 35, exercise 6.0.1