added P22.hs