in section 3.5.2, finish exercise 3.53 ~ 3.56.