South Africa overcame a poor start to hold on for a tight four-run win over Bangladesh in a low-scoring thriller at the T20 World Cup.
Set a target of 114, Bangladesh recovered from a sluggish opening to their own innings to move within sight of victory in New York thanks to a 44-run stand between Towhid Hridoy (37) and Mahmudullah (20).
Mahmudullah was then inches away from delivering the winning blow in the last over but South Africa captain Aiden Markram took a fine catch on the long-on boundary to effectively clinch it for his side.
South Africa fought back from 23 for four to post 113 for six after Tanzim Hasan Sakib had ripped through their top order.
Sakib (three for 18) removed openers Reeza Hendricks and Quinton de Kock and then accounted for Tristan Stubbs after fellow seamer Taksin Ahmed bowled Markram.
As in the previous match against the Netherlands, David Miller played a key role in the fightback, this time in partnership with Heinrich Klaasen.
The pair put on 79 for the fifth wicket with Klaasen top-scoring with 46, including two fours and three sixes, before Taksin deceived him with a slower delivery.
Momentum was then lost as Miller (29) was bowled by leg-spinner Rishad Hossain in the penultimate over and Mustafizur Rahman bowled a tidy final over that cost just four runs.
The Bangladesh reply followed a similar pattern as they slipped to 50 for four before Hridoy and Mahmudullah came together.
Kagiso Rabada crucially removed Hridoy leg before but Mahmudullah, having had his own lbw reprieve on 15, kept the chase alive.
Yet the boundaries dried up and after Jaker Ali was caught by Markram at long on off Keshav Maharaj in the 20th over, Mahudullah fell in identical fashion and South Africa clung on.
The best videos delivered daily
Watch the stories that matter, right from your inbox