Afghanistan beat Pakistan by 22 runs to reach the final of the Asian Games cricket tournament as the war-torn nation's battling team continued a fairytale rise.
In the first meeting between the two sides, Afghanistan scored 125-8 in their 20 overs before limiting Pakistan's flamboyant batsmen to just 103-7.
"It's a big win for Afghanistan. Every person there is watching the match and everybody is happy about this win," said captain Mohammad Nabi.
Advertisement: Story continues below
Afghanistan's score did not look enough as Pakistan made a lightning start to their reply, racing to 30 off just three overs.
Opening batsman Sharjeel Khan set the tone, hitting 12 off the first over bowled by Sahpur Zadran before he was lbw to Mirwais Ashraf for 23 off 16 balls with four boundaries and a six.
But Afghanistan managed to apply the brakes in mid-innings as wickets tumbled.
As tensions rose there was a fierce verbal exchange between Pakistan captain and opener Khalid Latif and Afghanistan wicketkeeper Mohammad Shahzad, which needed the intervention of the umpires.
Nabi then trapped Latif lbw for 26.
Naeemuddin Qazi was run out to leave Pakistan on 60-3 and two wickets in the same over by Karim Sadiq left them struggling at 68-5.
Naeem Anjum holed out as Pakistan tried in vain to find the boundaries that would ease the pressure and they failed to put themselves in a position to launch a final assault.
Nabi said: "I'm very satisfied because we have fantastic fitness levels and the boys have worked very hard in every position, whether it's fielding, bowling or batting."
Earlier, Afghanistan made a steady start to their innings through openers Sadiq (19) and Shahzad (17).
They reached 35 without loss but a flurry of wickets left them struggling on 55-4.
A partnership of 46 between Shabir Noori, who hit a quickfire 35 off 30 balls, and Asghar Stanikzai (10) gave impetus to the innings but wickets continued to fall at regular intervals.
Afghanistan will face either Sri Lanka or Bangladesh in Friday's final