Sri Lanka survived a woeful batting collapse to beat Afghanistan by 34 runs in a rain-shortened World Cup contest.
But it wasn't easy.
Coming off a humiliating 10-wicket loss at the hands of New Zealand, the 1996 champions looked to be on track for a mammoth first innings score, after being inserted by the minnows of the tournament.
Sri Lanka coasted to 144/1, before Nabi turned the match on its head with a brilliant spell of spin bowling that included three wickets in five deliveries, as Afghanistan claimed nine wickets for 57 runs.
Suddenly, Sri Lanka had crumbled to 182/8, before play was paused due to rain.
Big hitting by the tailenders carried Sri Lanka over the 200-run mark after play resumed in a reduced 41-overs-per-side match.
Kusal Perera top-scored with a run-a-ball 78, including eight boundaries, but he ran out of partners at the other end and holed out in desperation.
Afghanistan needed a rain-revised target of just 187 from 41 overs, but they failed to gain any momentum in their run chase and completely lost their way, after opener Mohammad Shahzad's dismissal in the fifth over led them to lose five wickets for just 23 runs.
They never managed to recover from that setback, with fast bowler Nuwan Pradeep being the pick of the Sri Lankan bowlers, claiming a career-best four wickets for 31 runs, as Afghanistan were bowled out for 152 in the 33rd over.
Newshub.
Join us at 12:30am Thursday for live updates of the Blackcaps v Bangladesh Cricket World Cup clash