Opener Kieran Powell smashed a century in each innings before Bangladesh captured late wickets to keep hopes of an unlikely result in the first Test in Dhaka yesterday.
The 22-year-old right-handed batsman scored 110 for his second century of the match to anchor his team to 244-6 at close on Day Four, leading by 215 runs and setting up an intriguing fifth and final day.
In the morning, Bangladesh were dismissed for 556 runs in their first innings, taking a slender 29-run lead over the West Indies first knock of 527-4 declared.
Powell, who made 117 in the first innings, batted with resolve and authority and added 189 runs for the second wicket with Darren Bravo who made 76.
But left-arm spinner Shakib Al Hasan dismissed Powell and Denesh Ramdin for five and debutant Sohag Gazi took two wickets to stop the West Indian run flow sparked by Powell and Bravo.
Their stand is a new record for the second wicket against Bangladesh, beating the previous stand of 87 was between Chris Gayle and Ramnaresh Sarwan at Gros Islet in 2004.
Here Gayle failed again, scoring only 19 before falling to paceman Rubel Hossain. Bangladesh could have dismissed Powell early but Junaid Siddique dropped a straight-forward catch off paceman Shahadat Hossain.
SRK-Gauri anniversary: B-Town stars and their non-filmi better halves
Birthday special: Popular mothers and daughters in Bollywood
Spotted: 'Kaabil' star Hrithik Roshan with dad Rakesh Roshan
'Rock On 2' trailer launch: Farhan, Shraddha enthrall audience with live gig
Photos: Deepika Padukone, Sushmita Sen with daughters at Mumbai airport