Wanindu Hasaranga dazzled with the ball and Dhananjaya de Silva shone with the bat as Sri Lanka crushed Afghanistan by six wickets at the T20 World Cup to bolster their semi-final hopes.
After defeats to Australia and New Zealand, Sri Lanka could not afford another slip-up and produced a commanding performance at the Gabba.
Afghanistan were limited to 144-8, in which six batters reached double figures, but nobody went further than Rahmanullah Gurbaz's 28 at the top of the order.
That was in a large part down to man of the match Hasaranga's wily leg spin that brought him brilliant figures of 3-13, including the wickets of Rashid Khan and Mujeeb Ur Rahman in the final over.
Sri Lanka were 46-2 after 7.5 overs of their reply, but Dhananjaya was in no mood to let this one slip away, and his sublime unbeaten 66 from 42 balls saw the team home.
He cracked two sixes and six fours, including the boundary through cover that saw Sri Lanka over the winning line with nine balls to spare, reaching 148-4, nicely teeing up their final Group 1 game against England at the SCG on Saturday.
Already the leading performer with the ball in this year's tournament, Hasaranga's haul improved his tally to 13 wickets, and trimmed his average to 13.53.
This time around he delivered 12 dot balls and avoided being struck for a boundary as Afghanistan struggled to read him, defeat ending their hopes of going any further.
Mujeeb edges nearer landmark
Mujeeb Ur Rahman took 2-24 for Afghanistan, removing Pathum Nissanka and Bhanuka Rajapaksa, to reach 48 wickets in T20Is. After washouts against Ireland and New Zealand, he and his team-mates would have been glad to play some part in a contest on Tuesday.
Now off-spinner Mujeeb has one more chance while at this tournament to become the third Afghanistan bowler to reach 50 T20I wickets, with Afghanistan rounding off their campaign against hosts Australia on Friday in Adelaide.