The Blackcaps have taken complete control of the second test against Bangladesh, finishing day two with a lead of 395 runs at Christchurch's Hagley Oval.
Centuries to Tom Latham (252) and Devon Conway (109) paved the way for the Blackcaps to declare their first innings over at 521/6, before Trent Boult (5/43) and Tim Southee (3/28) shone with the ball, bowling Bangladesh out for 126 before stumps.
Boult also had reason to smile by taking his 300th test wicket, getting to the mark in his 75th test match, beating long-time teammate Southee by one game.
Yasir Ali (55) offered the only real resistance for Bangladesh, notching his first test half-century, but ultimately ran out of partners and was forced to give his wicket away in search of quick runs.
The Blackcaps are almost certain to enforce the follow-on heading into day three, asking Bangladesh to bat again after trailing by more than 200 runs after their first innings.
Resuming on 99 on day two, it took Devon Conway one ball to bring up his third test century, glancing to the fine leg for four.
But Conway's innings came to an abrupt end on 109, as he was run out by Mehidy Hasan Miraz as Latham attempted to steal a run to cover.
The run out broke Conway's partnership of 215 runs for the second wicket with Latham, as the captain batted on to reach his second test double century, reaching another milestone - this one from 305 balls with 31 boundaries.
Conway's exit saw Ross Taylor arrive at the crease for what could potentially be his last innings in test cricket.
Already New Zealand's leading test run-scorer, Taylor added another 28 to his career tally before he fell, caught by Shoriful Islam off the bowling of Ebadot Hossain.
Henry Nicholls came and went for a duck courtesy of Ebadot, while Daryl Mitchell could only add three runs before he fell to Shoriful for three.
Wicketkeeper Tom Blundell arrived at the crease at No.7, and in desperate need of a score combined with Latham for a 76-run partnership in just 78 balls.
Latham batted on to pass 250, taking the attack to Bangladesh captain Mominul Haque, and raising his bat again after plundering 14 runs from the first four balls of the part-time spinner's over.
Chasing quick runs to set up a declaration though, Latham departed one ball after reaching 250, as his top-edged sweep was caught by Yasir Ali off Mominul.
Latham left the ground to a standing applause from his home crowd at Hagley Oval, departing with 252 runs to his name, with 34 fours and two sixes.
Buoyed by the loss of his captain, Blundell upped his scoring rate to notch a half-century of his own, finishing with an unbeaten 57 from 60 balls as Latham declared at 521/6.
And if Bangladesh's day with the ball hadn't gone to plan, things were only going to get worse with the bat in hand.
With his second ball, Boult landed the first blow, as Shadman Islam edged to Latham at second slip, as Bangladesh's top order collapsed.
At the other end, Southee removed Mohammad Naim for a duck, dragging back onto his stumps, before Boult had a second when Najmul Hossain Shanto also edged to Latham.
Southee removed captain Mominul Haque, bowled for a duck, as Bangladesh reached the tea break at 27/4 - still 494 runs behind in the first innings.
Boult continued the carnage after the tea break, removing Liton Das for eight, caught behind by a diving Blundell - and took the left-armer to 299 test wickets.
Yasir Ali and Nurul Hasan steaded Bangladesh's innings, adding 60 runs together for the sixth wicket, only for Southee to break the stand as it threatened to defy the Blackcaps.
Southee trapped Nurul in front for 41, where the Bangladesh wicketkeeper unsuccessfully challenged the decision as the sixth batter to fall at 87/6.
Boult returned to take his 300th, bowling Mehidy Hasan for five to leave Bangladesh seven down, before Kyle Jamieson made it eight with the wicket of Taskin Ahmed - courtesy of a spectacular catch from Will Young.
Yasir batted on to his 50, raising his bat for the first time as a test cricketer, but fell to Jamieson shortly afterwards.
And with the final ball of the day, Boult knocked over Shoriful Islam for two, raising the ball for his ninth test five-wicket haul, and giving Latham the opportunity to enforce the follow-on overnight.
Victory for the Blackcaps would level the two-match series at 1-1, and give New Zealand their first win of the new World Test Championship cycle, currently winless after three tests.
NZ 521/6 declared (Latham 252, Conway 109; Shoriful 2/79, Ebadot 2/143)
Bangladesh 126 all out (Yasir 55; Boult 5/43, Southee 3/28)
Join Newshub for live updates of day three between the Blackcaps and Bangladesh from 11am Tuesday