Jos Buttler and Sam Curran put England in the driver's seat as the hosts ended Day 3 of the fourth Test against India on 260-8 in Southampton on Saturday.
Buttler, who scored his first Test hundred in a losing effort at Trent Bridge nearly two weeks ago, struck a 122-ball 69 in the second innings before being dismissed, trapped lbw by Ishant Sharma. Meanwhile Curran, with whom Buttler shared a 55-run stand, remained unbeaten on 37 to add to his first-innings score of 78 as England ran up a 233-run lead with two wickets in hand by close of play.
A victory target in excess of 250 on fourth- and fifth-day pitches could prove daunting for India, who have to win to level the series 2-2 ahead of the fifth and final Test. Take 10 wickets and England will clinch the series and render The Oval game, which gets under way on Friday, a dead rubber.
It was a day for England's batsmen to dig deep, which they did with great difficulty.
Resuming on 6-0 in the morning – a deficit of 21 – their openers finally hoped to post the sort of partnership that has eluded them all series.
But fast bowler Jasprit Bumrah, who had produced an unplayable ball to remove opener Keaton Jennings in the first innings, quickly accounted for Alastair Cook (12) in the second when a full delivery was edged to Lokesh Rahul, who hung on at the third attempt.
Moeen Ali came in next, promoted up the order after scoring a double-hundred for his county last month but, on nine, edged fast bowler Ishant to Rahul, who took a fine, low catch.
Ishant proved a handful bowling round the wicket but was twice warned for running on the pitch with his follow through.
Another transgression would have seen him removed from the attack, so captain Virat Kohli decided to replace him with Ravichandran Ashwin at the point when England were most under pressure.
Jennings (36) batted positively against Ashwin, hitting him for two boundaries on either side of the wicket in one over before departing lbw without posting the sort of score that would secure his position after a series of disappointing knocks.
His partnership with captain Joe Root (48) was worth 59.
Paul Radley's talking points ahead of Southampton Test: England lead, India upbeat
Chitrabhanu Kadalayil: Kohli pays tribute and Buttler should never be dropped again
Root, though, was run out for the second time in the series after working hard to survive on a pitch that continues to offer encouragement to the bowlers. But this time the blame lay with all-rounder Ben Stokes, who called for the sharpest of runs to mid-on where Shami picked up and threw down the stumps at the keeper's end.
The England captain looked suitably crestfallen, but Stokes (30) and Buttler showed the application sometimes lacking with the hosts as the duo put on 56 runs for the sixth wicket.