Ishant Sharma's lion-hearted bowling effort met its match in Kane Williamson's elegance as New Zealand ended an attritional second day of the opening Test against India with a slight upper-hand, here on Saturday.
After another lower-order collapse that saw India get bundled out for 165, Ishant, coming straight back from an ankle injury, took three for 31 in 15 overs despite Williamson's effortless 89 in New Zealand's day-end score of 216 for 5.
New Zealand now lead by 51 runs.
Mohammed Shami (1/61 in 17 overs), during his final spell of the day, removed Williamson, who couldn't check an uppish drive. Henry Nicholls' (17 off 62 balls) struggle seemed to have hampered Williamson's rhythm.
During the final hour, Ravichandran Ashwin (1/60 in 21 overs), who also bowled beautifully throughout the day, relieved Nicholls' of his agony with a delivery that had drift and a hint of turn as India skipper Virat Kohli snapped the low catch at second slip.
Williamson looked good as he hit some delightful strokes square off the wicket. The square drive on the rise off Jasprit Bumrah (0/62 in 18.1 overs), followed by a cover drive, showed his class.
In all, the New Zealand skipper hit 11 boundaries off 153 balls.
Bumrah, in particular, was punished by Williamson, who also back-cut him for a boundary and Taylor then punished another half volley through the covers.
There were quite a few loose deliveries on offer from the Indian pacers and in between a few did beat the bat. With the 'Basin' baked in sunshine, batting became lot more easier and Black Caps seized the initiative.
Bumrah, in particular, failed to find his length consistently. Either he bowled too full and drivable length deliveries or too short that even Rishabh Pant failed to gather with the ball going a couple feet over his head.
This is where Ishant came into the picture. While he was lucky to get opener Tom Latham out with a delivery drifting on leg-stump, the other opener Tom Blundell (30) had a typical Ishant dismissal written all over it.
The ball was full on the off-stump channel and jagged back enough to find the gap between his bat and pad.
Williamson and Taylor then had a partnership of 93 runs during which New Zealand also got the lead before Ishant, coming back for his third spell, bowled one that reared up from good length and proved to be an easy catch for Cheteshwar Pujara at short-leg.
Once Nicholls came in, Williamson, who was batting fluently, suddenly had a player at the opposite end who scored only 4 off 34 balls.
Looking good for his 22nd Test hundred, Williamson, in his bid to get another boundary, couldn't check a cover drive and the low catch was taken by substitute fielder Ravindra Jadeja.
Earlier, New Zealand's debutant Kyle Jamieson and veteran Tim Southee took four wickets apiece as Indian innings folded in 68.1 overs.
Jamieson (4/49 in 16 overs) and Southee (4/49 in 20.1 overs) took four of the five wickets that fell on the second morning with India adding only 43 runs to their overnight score of 122 for 5.
Rishabh Pant (19) started with a six but then a horrible mix-up with senior partner Ajinkya Rahane (46) resulted in a run-out and the little chance of recovery was gone for good.
It was a poor call from the senior player and Pant had to sacrifice his wicket in the process.
Ashwin then received a beauty from Southee, pretty similar to what Prithvi Shaw got, while Rahane inside edged one while trying to leave it alone.
With India at 132 for 7, Rahane knew that time was running out as he played a square drive off Trent Boult to get him a boundary.
Southee then got rid of Rahane when he tried to shoulder arm a delivery that made a late inward movement. Mohammed Shami's entertaining 21 then enabled the visitors to cross the 150-run mark.