Mumbai rode on Hiken Shah's third successive century to set Bengal a stiff victory target of 391 in their Group A Ranji Trophy league match, after declaring the second innings on 294 for 5, on the penultimate day in Mumbai, on Monday.
Bengal were 47 without loss in the 16 overs in their second essay, with openers Arindam Das and Rohan Banerjee unbeaten on 19 and 23 respectively.
The visitors need 344 runs to win on the final day, in a minimum 90 overs, on a Brabourne stadium wicket that seems to have eased out.
Mumbai, who led Bengal by 96 runs in the first innings and started the day at six without loss, lost the wickets of Wasim Jaffer (19), Kaustubh Pawar (31) and skipper Rohit Sharma, who again flopped in the game, scoring 14, before the left-handed pair of Shah and Abhishek Nayar propped the innings.
Shah, who notched 108 off 209 balls, inclusive of 16 hits to the fence, before being dismissed by Shami Ahmed, and Nayar, who cracked his second half ton of the game while making 73 not out off 90 balls, had a century stand for the fourth wicket.
Having scored centuries in games against Rajasthan and Hyderabad, Shah was in blazing form and along with Nayar, who struck five fours and a six, put on 158 runs to help Mumbai apply the closure 40 minutes before the scheduled close of play.
The home team declared once Aditya Tare fell to a catch in the deep after a quickfire 19 off 11 balls, with three fours and a six.
But Bengal openers Das and Banerjee had no trouble in negotiating the Mumbai attack in fading light, and remained undefeated.
Bengal pacer Shami Ahmed, who went wicketless in the first innings, got two big wickets in the second.
He first packed off Jaffer, who shouldered arms to an incoming ball and was bowled, and then Shah, who was caught at mid-on, to finish with the innings top bowling figures of 2 for 39.
Sharma, who scored one run in the first innings, got into double figures in the second after being dropped first ball before Laxmi Ratan Shukla got his wicket for the second time in the game as he aimed for a drive and lost his stumps.
Between these two dismissals, opener Pawar fell to Abhishek Jhunjhunwala.
It was left to Shah (who had made 92 for Mumbai A against the visiting England team in the latter's second warm-up game) and Nayar to stem the slide and give the visitors a challenging total to chase in the fourth innings.
Shah completed his ton in style with a reverse-swept four off Jhunjhunwala in 193 balls after Nayar got to his fifty off 68 balls.
Both batsmen looked well in control before Shah tried for some quick runs and holed out to mid-on.
Tare, who joined Nayar, was on the offensive from the beginning and clouted Veerpratap Singh for a pulled six and a four before being caught in the deep.
Mumbai 297 & 294-5 decl (Hiken Shah 108, Abhishek Nayar not out 73; Shami Ahmed 2 for 39).
Bengal 201 and 47 for no loss (Arindam Das 19 batting, Rohan Banerjee 23 batting).