England are in control of the first Test against Sri Lanka after they dismissed their opponents for 91 on day two at Headingley.
The hosts began the day on 175-5 after a poor opening day, but Jonny Bairstow and Alex Hales led the charge as they brought up their 100 partnership early in the morning session.
There was disappointment for Hales, though, as he was dismissed by Dushmantha Chameera 14 runs short of his maiden Test century.
England began to wobble at the hands of Chameera as Moeen Ali was sent packing for a duck, four balls before Stuart Broad was bowled out for just two runs.
Bairstow managed to weather the storm as he pulled up his second Test 100 - his first on English soil - with a drive through the covers.
After the hosts returned from lunch on 243-8, the wickets fell as Bairstow was taken out by Chameera after hitting 140 runs off 183 deliveries, and Steven Finn hit 17 runs before returning to the pavilion with England all out on 298.
After going in to bat, Sri Lanka were almost stunned in the second ball with a run-out as the short delivery from James Anderson produced a drive from Dimuth Karunaratne towards backward square-leg, but Kaushal Silva urged his partner to stay put, resulting in a scramble to get back.
Anderson and Broad dominated the field as Sri Lanka lost three wickets inside the first six overs of the innings - Broad dismissed Karunaratne and Kusal Mendis for ducks, while Anderson sent Silva packing on 11 runs.
Ben Stokes claimed the wicket of Dinesh Chandimal (15), but the innings belonged to Broad, who ended the day 4-21, and Anderson, who took five for 16.
With Sri Lanka all out for 91, England captain Alastair Cook enforced the follow-on, but the tourists could only muster one run in two balls as play was stopped due to bad light.
Karunaratne and Silva will return to the crease tomorrow, with Sri Lanka trailing by 206 runs.