Trent Boult and Tim Southee inflicted damage to Sri Lanka's batting order before the second day of the second Test against New Zealand at Colombo was called off due to rain.
After resuming on 85-2, Sri Lanka was ticking along nicely when captain Dimuth Karunaratne (65) brought up his fifty.
But New Zealand's seamers soon came into play – Boult (2-33) claiming his 250th Test wicket as Angelo Mathews edged a pull through to wicketkeeper B. J. Watling.
Boult moved on to 251 four balls later, with Kusal Perera misreading a delivery that nipped straight back into his pads, departing without scoring to leave Sri Lanka 93-4.
Karunaratne steadied the ship, while Dhananjaya de Silva (31 not out) had a lucky escape when Boult's day took a turn for the worse.
The Black Caps bowler waved away other fielders after De Silva looped an edge high into the air, only for Boult to drop what should have been a simple catch.
Sri Lanka's captain was the next to go, however, as Southee (2-40) drew Karunaratne into a sloppy drive and Watling pouched the edge.
Not to be outdone by Boult, Southee bettered his team-mate's earlier feat, Niroshan Dickwella giving Watling another catch three balls later.
Dilruwan Perera and De Silva managed to hold firm until lunch, with the rains that plagued day one returning during the break, ending play for the day with Sri Lanka on 144-6.
- RCB vs UPW, WPL 2024: Asha Shobana Joy becomes first Indian to take five wickets in WPL history
- WPL 2024: Asha’s five-wicket haul helps RCB defeat UP Warriorz in a thriller
- La Liga: Barcelona breezes past Getafe 4-0 to climb to second place
- Barcelona has not given up hope of winning successive La Liga titles, says coach Xavi
- Paolini downs giant-slayer Kalinskaya to win Dubai Championships