Bangladesh staged a stunning recovery to claim a famous five-wicket victory over New Zealand at Cardiff and dump the Black Caps out of the ICC Champions Trophy at the group stage.
At 12-3 and then 33-4 in reply to New Zealand's 265-8, Bangladesh's chances of avoiding elimination looked slim only for a record fifth-wicket stand of 224 between Shakib Al Hasan (114) and Mahmudullah (102no) to terminate New Zealand's campaign instead.
Bangladesh overcame a weakened New Zealand side in Dublin at the end of May but Kane Williamson's side could have no excuse this time as they were outplayed by the Tigers, who claimed only their second ICC Champions Trophy victory in 11 attempts, their previous success coming against Zimbabwe in 2006.
The victory came at the same ground where Bangladesh famously overcame Australia by five wickets in 2005 and puts Mashrafe Mortaza's side on three points, meaning they will progress to next week's semi-finals if England beat Australia in Saturday's clash at Cardiff.
Shakib was first to his hundred, the seventh of his career, when he top-edged his 111th ball for six and the veteran celebrated by smashing consecutive fours off Trent Boult before being bowled with just nine runs needed.
Mahmudullah had just enough time to register his third century in an ICC tournament before Mosaddek Hossain hit the winning boundary, taking Bangladesh to 268-5 off 47.2 overs before the team completed a lap of honour.
Shakib and Mahmudullah came together with the chase in tatters after Tim Southee (3-45) had ripped through the top order with late swing and pace, trapping Tamim Iqbal for a second-ball duck before knocking over Soumyar Sarkar and Sabbir Rahman cheaply.
When Adam Milne bowled birthday boy Mushfiqur Rahim middle stump, Bangladesh looked in danger of setting a new record low score for the tournament, but that fear was short-lived as Shakib and Mahmudullah lifted the side past the lowly 65 posted by USA against Australia at the Rose Bowl in 2004.
Runs came at an even pace as Shakib posted his 35th ODI fifty off 62 balls - the veteran reaching the milestone while completing a 100-run stand with Mahmudullah, from 107 deliveries.
Mahmudullah followed suit, reaching his half-century off 58 balls, and after helping guide Bangladesh to a position where 121 were needed from 114 balls, he launched a six off Williamson's part-time spin as if to demonstrate just how much the tide had turned.
Williamson turned back to his premier strike bowler Southee with Bangladesh needing 70 off the last 10 overs to no avail as Shakib and Mahmudullah posted the highest partnership for any Bangladesh wicket in ODIs, beating the 178 off 130 balls shared by Tamim and Mushfiqur against Pakistan in Dhaka in 2015.
New Zealand paid the price for scoring just 62 runs off the final 10 overs of their innings, losing four wickets in the process, as off-spinner Mossadek Hossain took 3-13 off three overs.
The Black Caps seemed well set at 201-3 in the 39th over after an 83-run stand between Williamson (57) and Ross Taylor (63) only for the innings to stutter, much as it did with collapses against Australia (7-37) and England (8-65).
Williamson overcame an edgy start to pass fifty for the third time in the tournament - following up his century against Australia and 87 against England with 57 off 63 deliveries - only to run himself out attempting a quick single.
Taylor continued to lay a platform, rather than cut loose, and when he fell attempting to ramp Taskin the innings was in danger of stalling.
Neil Broom tried to up the tempo in partnership with Jimmy Neesham with New Zealand just 203-4 off 40 overs only to be the first of two victims in three balls for Mosaddek, the off-spinner also trapping Corey Anderson lbw for a first-ball duck.
Mashrafe Mortaza's decision to bowl Mossaddek in the final 10 overs paid further dividends when the spinner saw Neesham coming and pushed through a quicker ball to earn a clear-cut stumping.
Live coverage of the ICC Champions Trophy continues on Sky Sports 2 at 10am this Saturday with England against Australia.