Opener Yashasvi Jaiswal's 209 and six wickets by pace bowler Jasprit Bumrah put India firmly in command of the second Test against England on Saturday's day two.
Bumrah returned figures of 6-45 and wrist spinner Kuldeep Yadav took three wickets to bowl out England for 253 as the tourists conceded a first-innings lead of 143 in Visakhapatnam.
England lost wickets at regular intervals and, despite a quick start courtesy of Zak Crawley's 76, their innings ended in the third session after skipper Ben Stokes' 47.
"Bumrah bowled unbelievably well," Crawley said.
"I felt it was a better wicket than last week to bat on it at that point and there wasn't much turn, but you got to hold your hand up sometimes and say 'well bowled'."
Crawley also praised Jaiswal for his "unbelievable innings".
"Really big fan of the way he goes about it, he's really aggressive and it's obviously going to be a very special knock," he said.
India were 28-0 at stumps in their second innings to extend the lead to 171. Jaiswal, on 15, and skipper Rohit Sharma, on 13, were batting.
Jaiswal set up India's dominance with his first Test double century to steer the hosts to 396 all out in the first session after they started the day on 336-6.
In reply, England lost Ben Duckett for 21 off Kuldeep but fellow opener Crawley, on his 26th birthday, kept up the charge in his 78-ball blitz laced with 11 fours and two sixes.
Crawley attacked with three straight fours off Bumrah in a demonstration of England's fearless "Bazball" style of play and raised his fifty with a six.
But he mistimed off Axar Patel's left-arm spin for a brilliant running catch by Shreyas Iyer and India capitalised on the error.
- No magic -
Bumrah got Joe Root caught at slip for five with his reverse swing and then brought the house down when he bowled first-Test hero Ollie Pope for 23 with a trademark yorker.
"I was not thinking of bowling a magical delivery," Bumrah said of the toe-crushing ball that rattled Pope's stumps.
"And that moment I thought the yorker was the best delivery to bowl. It was a good execution and I was very happy."
Stokes attempted to stop the rot in his attacking stay at the wicket but Kuldeep, a left-arm wrist spinner, and Bumrah kept chipping away to rattle the middle and lower order.
Bumrah bowled Stokes for his 150th Test wicket with a delivery that seamed back in to the left-hand batsman and stayed low to rattle the stumps.
He then registered his 10th five-wicket haul in Tests after he sent back Tom Hartley for 21 and took one more to wrap up the innings.
Earlier, Jaiswal single-handedly powered an Indian innings in which the next best score was 34.
The 22-year-old moved from his overnight 179 and smashed spinner Shoaib Bashir for a six and four with sweeps to get past 200.
He removed his helmet, jumped with joy and blew kisses to a weekend crowd that rose for a standing ovation.
Veteran pace bowler James Anderson, 41, finally got Jaiswal out for his third wicket as the batsman walked back and the England players came rushing to congratulate him.
Bashir and fellow spinner Rehan Ahmed also took three wickets each.