An inspiring all-round performance from captain Darren Sammy powered a resurgent West Indies to a convincing 75-run win over Bangladesh, levelling the five-match rubber at 2-2 and setting up today's final game as the series decider.
Sammy hammered a typically robust, unbeaten 60 to ensure the Caribbean side's tail wagged long enough to reach 211 for nine off 50 overs, after the innings lay crippled at 155 for eight at one stage.
The right-armer then claimed three for 28 from an outstanding spell, including two wickets in successive balls in the second over of the innings, as Bangladesh slumped to a terminal 13 for five before being bowled out for 136 off 34.1 overs at the Shere Bangla National Stadium.
Sammy, voted Man-of-the-Match, was supported by seamers Dwayne Smith (two for seven) and Kemar Roach (two for 29), along with left-arm spinner Veerasammy Permaul (two for 35).
All-rounder Mahmudullah resisted stoutly but was left on 56 not out off 78 balls as the hosts surrendered for the second straight game to squander their early 2-0 lead in the series.
Nothing in the script hinted at a Windies triumph, especially after they were earlier set upon by Bangladesh's spinners, with Mahmudullah taking three for 46 with his off-spin while left-arm spinners Elias Sunny (two for 21) and Abdur Razzak (two for 47) chipped in.
The trio combined to trigger a collapse that saw seven wickets tumble for 84 runs during the middle overs, as West Indies plunged from a comfortable position of 71 for one.
The situation could have been worse for the Windies had Bangladesh not dropped a plethora of catches in an indifferent fielding display.
Prized opener Chris Gayle fell cheaply for the fourth time in the series when he failed to clear the infield with seamer Mashrafe Mortaza in the sixth over, and gave Sohag Gazi an easy catch at mid-off, after scoring 16 with the score on 29 for one.
Opener Kieran Powell (26) and Marlon Samuels (27) then consolidated in a second wicket stand worth 42 before the chaos erupted, with four wickets crashing for eight runs in the space of 38 balls.
Samuels, dropped twice before he had passed 15, stroked three fours off 42 balls before he eventually perished in the deep off Elias Sunny in the 18th over.
Out-of-form Dwayne Smith was bowled first ball by a fullish delivery from Abdur Razzak in the next over and Powell followed with no runs added when he played back to Elias Sunny and was lbw.
Vice-captain Kieron Pollard, also notably short of runs, pushed at one from Mahmudullah that went straight on and was taken at the wicket for two, leaving West Indies on 79 for five in the 24th over.
Left-hander Darren Bravo, dropped on ten by wicketkeeper Mushfiqur Rahim off Elias Sunny, made 34 off 61 balls, stemming the flow of wickets in a 23-run, sixth wicket stand with Devon Thomas (10).
When Thomas had his stumps rattled by Mahmudullah in the 32nd over, Sammy arrived to control the tempo of the innings, putting on 43 for the seventh wicket with Bravo before single-handedly doing the damage at the death.
Dropped on 30 in the deep by Sohag Gazi off Mashrafe Mortaza in the 46th over, Sammy went on to face 62 balls and count five fours and two sixes.
Defending a modest total, Sammy again took matters into his own hands, striking twice in his first over to remove opener Anamul Haque (one) and Naeem Islam (zero).
He claimed Anamul on a soft caught-and-bowled chance off a leading edge and then had the dangerous Naeem Islam taken low down at second slip by Bravo.
The two wickets turned the game on its head and Bangladesh were staring further down the barrel when Roach prised out aggressive opener Tamim Iqbal (one) and Nasir Hossain (two) in the very next over.
When Mominul Haque pulled Sammy to Pollard at square leg to leave the Tigers tottering on 13 for five in the sixth over, the game seemed headed for an early end but Mahmudullah and Mushfiqur (27) prolonged the inevitable with a 74-run sixth wicket partnership.
Once the stand was broken by off-spinner Sunil Narine, however, the last five wickets tumbled for 49 runs.