Sri Lanka reached the semi-finals of the World Twenty20 thanks to a Rangana Herath-inspired 59-run victory over New Zealand in their final Group One fixture.
Bowled out for 119 after being asked to bat, Sri Lanka successfully defended their modest total with left-arm spinner Herath claiming figures of 5-3.
New Zealand were dismissed for 60 in reply, never recovering from Herath's burst of four wickets in 10 balls - including Brendon McCullum, Ross Taylor and Jimmy Neesham for ducks - after he was brought on in the fourth over.
Opener Kane Williamson's 42 was the only score in double figures but he was run out from the first ball of the 16th over and Herath dismissed Trent Boult two deliveries later to seal Sri Lanka's victory and New Zealand's elimination.
Sri Lanka finish top of Group One and will play either Pakistan or West Indies in the last four, depending on who wins Tuesday's meeting between the Group Two pair. India will take on South Africa in the other semi-final.
At the changeover Sri Lanka - led by Lasith Malinga due to Dinesh Chandimal's one-match ban for slow over-rates - would have been disappointed with their total, not least a failure by four balls to bat the overs out.
Things had started brightly, Kyle Mills' opening over costing 12 as Kusal Perera hit an early six and four.
But Boult had different ideas and accounted for each of the top three in his opening burst.
Perera was first down, feathering down the leg side for 16, while Tillakaratne Dilshan was out to misjudging his trademark scoop.
The out-of-form Kumar Sangakkara then continued his poor run when he looped a gentle catch to Corey Anderson at mid-off for four.
Mahela Jayawardene and Lahiru Thirmanne then rebuilt to the tune of 30 runs in five overs before the latter steered a poor Neesham ball down third man's throat.
New Zealand kept applying pressure through wickets, Angelo Mathews in and out for six and Jayawardene finally bowled on the sweep by Nathan McCullum for 25 in 32 balls.
At 85-6 things looked bad, but although the Black Caps hoovered up all four wickets, handy runs from Thisara Perera (16) and Sachithra Senanayake (17) boosted the tally towards credibility.
The reply began somewhat serenely, Williamson and Martin Guptill making their way to 18 in three overs.
But the introduction of Herath changed the game. He combined with Sangakkara to run out Guptill off his first delivery and then claimed the key scalp, Brendon McCullum tempted down the track only to be stumped for a duck.
His next over was just as deadly, Herath pinning Taylor lbw then clattering Neesham's leg stump, both without scoring.
His third over brought a fourth success, Luke Ronchi perplexed by turn and trapped leg before.
At 29-5 the target looked mountainous and Sri Lanka rammed home their advantage when Senanayake got in on the act by seeing off Nathan McCullum and Mills without fuss.
While chaos raged around him Williamson compiled a steady 42, though his departure, wastefully run out in the 16th over, left his side on the brink.
With Anderson unable to bat due to a dislocated finger, Herath ended things by picking off Boult.