finish Exercise 1.34~36
finish Exercise 1.37~44