Through problem 1.18
through problem 1.22