Heinrich Klaasen and Rassie van der Dussen scored half-centuries as South Africa eased to a comfortable seven-wicket win over England in Karachi to book a semi-final place at the Champions Trophy.
South Africa bowled England out for 179 in 38.2 overs after the latter had chosen to bat, before reaching their target with a huge 125 balls to spare following a 127-run third-wicket stand between Klaasen (64) and Van der Dussen (72 not out).
They top Group B and join Australia, India and New Zealand in the semi-finals, with the fixture line-up to be confirmed when the latter two meet in Dubai on Sunday.
The match was the last in charge for England captain Jos Buttler, who is to step down from his role after the side lost all three pool fixtures in the tournament.

Raphinha, Fermin score as Barcelona beat Athletic in home opener
Chelsea and Fulham reach League Cup third round as Welbeck scores on debut
PSG to meet Barca, Man City as Champions League draw throws up marquee ties
Abbas gives Pakistan slight edge as England battle back at Lord's
UEFA suspends FIFA boycott threat but steps up pressure on world body