Sri Lanka captain Angelo Mathews hit a counter-attacking 80 as his side battled back against England in the second Test at Durham.
England were left frustrated in their attempts to close out a series victory against Sri Lanka, who battled to 309-5 following on but remain 88 runs at stumps on the third day of the second Test.
Captain Angelo Mathews led the charge on Sunday with an aggressive 80, while Dinesh Chandimal (54) and Milinda Siriwardana (35) were not out at the close as England struggled to make inroads on a slow pitch at Chester-le-Street.
The day had got off to a much brighter start for England, who took the tourists' two remaining first-innings wickets in the first hour of the day and asked Sri Lanka to follow on, as they did in the opening Test of the three-match series.
Stuart Broad had Suranga Lakmal (0) caught behind by Jonny Bairstow and Nick Compton held Lahiru Thirimanne (19) off James Anderson's bowling to leave Sri Lanka all out for 101, a massive 397 runs behind and facing a second successive crushing defeat.
There was greatly increased resistance from Sri Lanka after play resumed, but Chris Woakes (1-51) made an early breakthrough for England by removing Dimuth Karunaratne (26), Joe Root taking a simple catch in the slips.
Kusal Mendis followed, edging Anderson (2-40) behind for 26, before Moeen Ali found good turn to superbly bowl Thirimanne (13), beating the batsman's outside edge and clipping off stump as Sri Lanka fell to 100-3.
Opener Kaushal Silva batted with great patience and Mathews played some blistering shots as the Sri Lanka pair built an 82-run partnership for the fourth wicket, before a fired-up Steven Finn (1-55) bounced Silva (60) out, Bairstow taking yet another catch.
Captain Mathews, who hit 10 boundaries in his counter-attacking knock, nicked behind to Bairstow soon after to give Anderson his second wicket of the innings, with Sri Lanka still 175 runs behind.
But Sri Lanka continued to attack with Chandimal taking on Ali, the spinner appearing to lack confidence after Mathews' earlier assault, and the wicket-keeper shrugged off his hand injury to reach his first fifty in eight innings in England.
Siriwardana also impressed as he put a first-innings duck behind him, showing mental strength and striking six boundaries on his way to 35, but despite a much-improved batting performance the visitors have plenty of work to do on Monday if they are to save the Test.