Bangladesh have their noses in front in the second Test with England following another absorbing day of twists and turns in Dhaka.
Last week's first Test in Chittagong was a thrilling contest featuring numerous shifts in momentum, England eventually prevailing by 22 runs on the final morning.
And this contest has proven no less dramatic, with both teams having seized the initiative on more than one occasion only to be pegged back.
At the close on Saturday, Bangladesh led by 128 on 152-3, the hosts fighting back impressively after England claimed an unlikely first-innings advantage courtesy of a ninth-wicket stand of 99 between Chris Woakes (46) and Adil Rashid (44 not out).
Bangladesh had dramatically collapsed from 171-1 to be dismissed for 220 on day one. In contrast, England slipped to 144-8 on the second morning as teenager Mehedi Hasan (6-82) shone again, but recovered to post 244 all out.
England's lead was swiftly wiped out as their opponents got off to a flier in their second innings, the in-form Tamim Iqbal and Imrul Kayes sharing 65.
Tamim (40) and Mominul Haque (1) fell in successive overs, the former a first Test scalp for England debutant Zafar Ansari, but Imrul (59 not out) and Mahmudullah (47) counter-attacked effectively prior to the latter throwing his wicket away facing the day's final ball.
Prior to Woakes and Rashid's rescue mission, Joe Root had been the only touring batsman to offer significant resistance, top-scoring with a gritty 56.
Moeen Ali and Ben Stokes fell cheaply after England had resumed on 50-3. Although Jonny Bairstow (24) and Ansari (13) provided more support to Root, Mehedi accounted for both to complete his second five-wicket haul in as many Tests.
England were still 76 behind when Taijul Islam trapped Root lbw on the back foot. However, both Woakes and Rashid were on the right end of reviews early in their innings, with the latter also lucky not to be stumped on six.
Woakes had a let-off on 38 as he pulled a dreadful full-toss from part-timer Sabbir Rahman straight to short midwicket, only for the umpire to signal a no-ball for height following video replays.
The all-rounder eventually departed in the first over with the second new ball, caught at leg slip off Mehedi, and last man Steven Finn lasted just four deliveries as Rashid was denied a half-century.
Buoyed by a first-innings hundred, Tamim again scored freely in Bangladesh's second innings before he was also held at leg slip.
England skipper Alastair Cook took another catch two balls later - this time in a regulation slip position for Stokes - to send Mominul back, but Imrul and Mahmudullah responded superbly with a stand of 86.
That put Bangladesh in control, yet there was a final twist as Mahmudullah foolishly aimed a wild sweep at Ansari and was bowled.