London: Sri Lanka captain Tillakaratne Dilshan struck a superb century as the tourists fought back on day two of the second Test against England at Lord's.
Dilshan was 127 not out at the close of play with Sri Lanka on 231-1, his fellow opener Tharanga Paranavitana falling for 65 after a stand of 207.
Earlier, England, resuming on 342-6, had been bowled out for 486, with wicketkeeper Matt Prior hitting a brilliant 126.
Stuart Broard hit 54 in a stand of 108, before Dilshan's knock stole the show.
England wicketkeeper Matt Prior completed his fifth Test century on Saturday to take the home side to an imposing 486 all out in their first innings on the second day of the second Test against Sri Lanka at Lord's.
Prior, who was on 73 overnight, was dropped on 94 at second slip by Sri Lanka's best slip fielder Mahela Jaywardene.
Another boundary flew at a catchable height between first slip and wicketkeeper before he eventually brought up his hundred from 107 balls with 17 boundaries.
He was finally out bowled off stump by left-arm spinner Rangana Herath for 126 playing a mighty swipe across the line.
Prior added 108 for the seventh wicket with Stuart Broad, who smacked six boundaries in the morning session to reach 54 before he was lbw to left-arm pace bowler Chanaka Welegedara.
Welegedara picked up a fourth wicket when Graeme Swann (4) edged a routine catch to Tharagana Paranavitana at first slip.
Chris Tremlett scored a useful 24 not out while number 11 Steven Finn made his highest Test score of 19 to add to Sri Lanka's frustration before he was bowled by Herath five minutes before the scheduled lunch interval.
England's final total was all the more creditable after they had been reduced to 22 for three within the opening eight overs after being asked to bat on Friday.
Alastair Cook (96), Eoin Morgan (79) and Prior headed a comeback to put the home side in control after they defeated Sri Lanka by an innings and 14 runs in Cardiff last Monday.
Brief scores
England 486 (Prior 126, Cook 96, Morgan 79, Broad 54, Bell 52, Welegedara 4-122)
Sri Lanka 231 for 1 (Dilshan 127*, Paranavitana 65)
Staatus Sri Lanka trail by 255 runs