finish chapter12 programmingMaster