South Africa is a step closer to the VB Series finals thanks to a five-wicket win over Sri Lanka at the WACA Ground.
The Proteas recovered brilliantly from an early Sanath Jayasuriya onslaught, bowling Sri Lanka out for 221 in the 48th over, and then also absorbed pressure from Muttiah Muralitharan to reach 224-5 with 29 balls to spare.
Jayasuriya struck nine fours and three sixes on the way to 86 from 65 balls and added 94 with fellow opener Jehan Mubarak (31), but Graeme Smith's 3-30 from 10 overs changed the game.
As well as the openers, Smith also dismissed Mahela Jayawardene to spark a collapse of 7-45 after Sri Lanka had been 137-1 in the 22nd over, with Tillakaratne Dilshan the only other batsman to make a decent contribution with 37.
Smith finished with career-best figures of 3-30 from 10 overs, with Shaun Pollock also chiming in with a miserly 2-17 from 10 overs.
The Proteas began strongly, scoring 55 runs without loss from the first 10 overs, after part-time off-spinner Russel Arnold surprisingly took the new ball with Chaminda Vaas before being belted out of the attack.
Even the introduction of Muttiah Muralitharan was unable to stem the flow of runs, 14 coming from his first over with Graeme Smith and Boeta Dippenaar looking comfortable at the crease.
The champion spinner struck back by removing Smith for 41 to end the 84-run opening partnership, but the wicket didn't bother Dippenaar, who brought up his half-century in the 21st over with five fours and two sixes.
Boeta Dippenaar made a superb 87 from 94 balls, including seven fours and three sixes, adding 84 with Smith (41 from 52) and 80 with Jacques Rudolph (25).
But while Muralitharan (3-44) and super sub Malinga Bandara (2-47) sparked a slump of 4-26, Mark Boucher (30no from 33) and Ashwell Prince (20no from 25) saw their team home.