India had the West Indies back to the wall after putting up a huge total and making early inroads into the host's batting on the second day of the second Test on Sunday.
Centuries from captain Rahul Dravid and Mohammad Kaif, coming on the back of Virender Sehwag's 180 on the opening day, saw the Indians declare their first innings at 588 for eight at the Beausejour stadium.
Speedster Munaf Patel then struck twice off successive balls to leave the West Indies in a mess at 65 for three at stumps, a deficit of 523 runs.
Opener Chris Gayle was batting on 34 with Shivnarine Chanderpaul five not out at the other end.
Patel struck in the 10th over of the innings when Daren Ganga walked into an in-swinger and was struck in front of the stumps for 16.
Ramnaresh Sarwan was out in a similar fashion the very next ball before Brian Lara became the third leg before victim, offering no shot to an Anil Kumble delivery that straightened after pitching on middle and off.
But it was Dravid and Kaif who put India in the driver's seat with their 179-run association for the fifth wicket.
Dravid hit a well paced 146, his 23rd hundred in his 102nd Test, laced with 16 fours from 234 balls.
More memorable would be Kaif's unbeaten 148 as it was the Uttar Pradesh batsman's maiden century, coming in his 11th Test after his debut against Hansie Cronje's South Africa at home six years ago.
Resuming at 361 for four, India increased the tempo with Dravid and Kaif adding 124 runs from the morning session of 29 overs.
Neither the second new ball or shuffles in the bowling order was of much use to the home team.
The second new ball was claimed in the second over but Dravid reached his landmark only in the fourth when he pulled Jerome Taylor for two runs.
He also executed the first boundary of the morning when he flicked Corey Collymore to the square leg boundary.
Thereafter, it was Kaif who hit more fours and did the bulk of scoring.
He began with a pull off Taylor and then straight drove Collymore.
Taylor was again flicked and when Pedro Collins and Gayle appeared for the first time on the day, he cover drove and flicked them for boundaries.
There was a definite attempt by the Indian batsmen to push the score along.
Both Dravid and Kaif started to come down the pitch against the likes of Gayle and Sarwan and could manipulate the strike at will.
The 400 was brought up in the 95th over and the century and between the two also did not take long in coming.
It took the two marauding batsmen only 159 balls.
Dravid fell just before lunch while chasing a rank outside delivery from the part-time spin of Sarwan.
Kaif's fourth half century was in fortuitous circumstances because of four overthrows.
He had pushed the ball in the covers and took off for a single and the fielder, in his anxiety, threw a sharp return which eluded all and crossed the mid-wicket fence.
The post-lunch session did not go entirely India's way as West Indies picked two wickets - Mahendra Singh Dhoni (9) and Irfan Pathan (19) - in exchange for 99 runs.
That might have delayed the declaration but with puffs of dust already coming off, the hosts might face a tricky third day's wicket to bat on.
Irfan Pathan showed little signs of having regained his form that had deserted him in the one-dayers but Patel troubled Ganga and Gayle with his movement off the pitch.
The right-arm seamer from Bharuch induced two outside edges from Ganga, the first one flew past the outstretched hands of Jaffer at third slip but the second was easily catchable but Laxman and Jaffer each left it for the other.
But in an inswinger did the trick for the accurate Patel as Ganga's front foot was far too across the line for the appeal to be turned down.
Sarwan succumbed to a similarly well directed ball and Lara made the cardinal sin of thrusting his pad forward to Kumble on a pitch that has begun to keep low.