Fix some bug in p16
Finish problem 19
Finish p20