Collin de Grandhomme smashed five sixes and five boundaries in a 75-ball 83 not out and shared an unbroken 113-run partnership for the sixth wicket with BJ Watling who made an unbeaten 81, to quickly increase New Zealand's first-innings lead to 138 runs at stumps on day four of the second cricket test on Sunday.
The stand came after Tom Latham's impeccable 154 that also involved a 143-run fifth-wicket partnership with Watling.
New Zealand were 382 for five when stumps were called on a day when only 48 overs of play was possible and the full first session was lost to rain. As has been the case for much of this test match, start of play on day four was delayed by nearly four hours because of rain and began only in the middle session.
Watling who recorded his 18th test half-century was on a measured 81 off 208 deliveries, including four boundaries.
It is Grandhomme's seventh test half-century.
New Zealand reached tea at 295 for five in reply to Sri Lanka's first-innings score of 244. They resumed on 196 for four and scored 99 runs in the afternoon session.
De Grandhomme who was 19 not out at the break played some aggressive shots in the third session showing signs that the Black Caps intend to increase the lead with a view to making a declaration.
The sixth-wicket partnership took just 157 deliveries in less than two hours.
With only the last day's play left in the match and Sri Lanka winning the first test in the two-match series, it is crucial for New Zealand to attempt to force a result in their favour to secure crucial points for the World Test Championship.
Latham was the only batsman to be dismissed on the day. He played off his back foot to off-spin bowler Dilruwan Perera and was trapped lbw. Opening the batting, Latham spent more than six hours at the crease, faced 251 deliveries and hit 15 boundaries.
This is the fifth time he has crossed 150 runs in 10 test centuries, of which four have been scored against Sri Lanka.
The partnership between Latham and Watling came off 258 deliveries.
Perera took three wickets for 114 runs in 37 overs.