ch3 & fix a problem in ch2