Trent Boult took the fastest five-wicket haul as New Zealand dominated day two of the second Test against Sri Lanka.
The 29-year-old claimed 6-4 in 15 balls, with his first five scalps coming from just 11 deliveries, to beat Jacques Kallis, Monty Noble and Kemar Roach who all took five wickets in 12 balls.
Boult's breathtaking spell at the beginning of the day began when Roshen Silva and Niroshen Dickwella edged him to Tim Southee in the slips in consecutive overs.
The fast bowler then trapped Dilruwan Perera, Suranga Lakmal, Dushmantha Chameera and Lahiru Kumara all lbw for ducks, as the away side slipped from 88-4 to 104 all out in eight overs at the start of the second day.
Jeet Raval and Tom Latham then put on 121 for the first-wicket as the Black Caps pushed home their advantage before the former departed for 74, caught at short leg off Perera.
Captain Kane Williamson shared a half-century second-wicket partnership with Latham but fell to a brilliant catch by Kusal Mendis at wide first slip off Kumara for 48.
Latham (74 not out) and Ross Taylor (25 not out) eased the hosts to 231-2 at the close of play, giving them a 305-run lead.
Watch day three of the second Test between New Zealand and Sri Lanka, live on Sky Sports Cricket from 9.55pm on Thursday.