Indian spinners roared back to form to leave England reeling at 103 for five in their first innings as the hosts strengthened their position in the second Test.
The spinners showed what they can do on a pitch offering help and were led by the in-form Ravichandran Ashwin, who picked up the key wicket of Joe Root (53) and Ben Duckett (5) after scoring a crucial half century earlier in the day.
For England, Ben Stokes and Jonny Bairstow were in the middle at close of play on day two with their team still trailing by 352 runs.
India, starting the day at 317/4, added 138 runs to post 455 with overnight centurion Virat Kohli going on to make 167 besides Ashwin (58) and debutant Jayant Yadav (35) making valuable contributions.
When he got the chance to bowl, off-spinner Yadav went on to make take his first Test wicket by having Moeen Ali leg before with India making successful use of the DRS.
The ball started turning and keeping low from lunch onwards, but Root stamped his class to notch up his 24th fifty in the 50th Test.
But he could not make it fully count as Ashwin (2/20) provided the crucial breakthrough when the Englishman stepped out only to be holed out at long-off.
With Root back in the hut, India were soon on top of the opposition and a DRS decision also went in India’s favour as Kumar Dharmasena’s ‘not-out’ decision of Ali was successfully reviewed by the home side to hand Yadav his maiden scalp that reduced England to 80 for five.
The fielding was also sharp and Wriddhiman Saha executed a MS Dhoni-like back flip to run out Haseeb Hameed (13). The 19-year-old opener played with utmost caution and consumed 50 balls in his 50-ball innings.
But a misjudgement for a second run cost him his wicket with Saha executing a fine run-out by moving in front of the stumps before backflicking the ball right onto stumps.
In the second session, Hameed and Root hung on after they lost skipper Alastair Cook (2) in the third over.
With a peach of delivery that sharply came in, Mohammed Shami (1/15) dislodged Cook’s off-stump, breaking wild celebrations among the Indian fielders.
Shami and his fellow pacer Umesh Yadav consistently hit the deck at 140kph-plus speed in a fine display of pace bowling.
Earlier, Ashwin batted beautifully in his innings spanning two hours and 26 minutes and found a fine ally in debutant Yadav as they put up a crucial 64 run stand for the eighth wicket after Moeen Ali’s triple blow in the first session.
Having brought in the ninth over of the day, Ali provided the breakthrough by dismissing Kohli in his second over of the day and in the next over he took two — Wriddhiman Saha (3) and Ravindra Jadeja (0) — in three balls to reduce India to 363/7.
But Ashwin, who was dropped on 17, played with patience on a wicket that started turning as India’s last five batsmen chipped in with 104 runs.
Ashwin completed his fifty from 86 balls with a boundary as he proved his mettle once again with the bat in a fruitful calendar year in which he averages 46.60 from nine matches including two hundreds.
India unsuccessfully reviewed Saha’s LBW but a dubious decision of Jadeja by umpire Kumara Dharmasena in the same over went unchallenged.
Replays showed that the ball pitched outside the offstump went with the angle and missed the lefthander’s legstump but with one review pending India were not in a mood to take a chance.
Eyeing a third double century in a calendar year, Kohli looked in no trouble against against pacers James Anderson and Stuart Broad in the morning session.
The Indian skipper momentarily lost his concentration with the change of bowling as he went for an expansive drive in the very second ball he faced to Ali and Stokes held on to the catch at slip to bring an end to his six-hour and 41-minute vigil at the crease.
Having grounded Ashwin to his left in the previous ball, Stokes let out a frustrated celebration as Kohli made a quiet walk but not before putting India in command.