A second Test century by Keaton Jennings helped England put Sri Lanka on the ropes in the first Test in Galle, with the hosts set a daunting 462 to win at Galle at the stumps on day three.
England, who resumed the second day with their score 38/0, declared on 322 for six late on day three with Jennings 146 not out after a patient innings that saw him deal deftly with the home side’s spin attack.
At the close of play, Sri Lanka were 15 without loss with Dimuth Karunaratne on seven and Kaushal Silva on eight after hanging on for seven overs.
In the morning session a somewhat shaky Rory Burns was run out for 23 before Moeen Ali drove a ball straight to Rangana Herath at mid-on off off-spinner Dilruwan Perera for three.
Herath, in his last game before retiring, then got England captain Joe Root out for the second time in the match, caught behind for three.
But Jennings played cautiously and looked comfortable against the spin on a wearing pitch that promises Sri Lanka a Herculean task on day four.
Ben Stokes hit a brisk 62 off 93 balls that saw three sixes, including one back over Perera’s head and an almighty sweep high over midwicket off Dhananjaya de Silva to bring up the 300.
But shortly before tea he became Perera’s second scalp, a demon of a ball pitching outside leg and angling back to take the Durham all-rounder’s off stump.
Jos Buttler smashed a quick 35 before being caught off Herath while Foakes belted out 37 before falling to spinner Akila Dananjaya.
England made 342 in the first innings thanks to a century from Ben Foakes, filling in as wicketkeeper for the injured Jonny Bairstow.
Sri Lanka were then bowled out for 203, leaving them 139 behind, falling to a spin attack led by Ali who took four for 66.