Bangladesh seamer Hasan, playing his second match, got a maiden Test wicket when he held a return catch to remove Sri Lanka captain Angelo Mathews early in the morning.

Mathews, who could add just two runs to his overnight score of 25, put on 62 for the fourth wicket with Thirimanne.

Kumar Sangakkara put Sri Lanka in a strong position on Friday when he cracked an impressive 142 for his 31st Test century. Openers Tillakaratne Dilshan (54) and Dimuth Karunaratne (41) were the other main scorers.