(CNN) -- AB de Villiers struck four consecutive sixes in one over in a blistering 163 as South Africa closed on victory against Australia in the third and final Test in Cape Town.
De Villiers blasted a superb century at Newlands as Australia wilted.
De Villiers launched seamer Andrew McDonald over the boundary rope four times in a row and took 25 off the over at Newlands.
The middle order batsman scored seven sixes in all and seven fours during his assault on the third day.
Australia, who won the first two Tests to win the series, were facing defeat after struggling to 102 for two by the close with Phil Hughes and captain Ricky Ponting in the pavilion.
Earlier, South Africa lost three wickets in the morning session, including Jacques Kallis for 102 without adding to his overnight score.
But de Villiers and Albie Morkel produced a seventh wicket stand of 124 to take the game away from the Australians, who eventually trailed by 442 on first innings as South Africa totalled 651.
Second Test hero Hughes and Simon Katich put on 57 for the first wicket until the former was removed by left-arm spinner Paul Harris.
When Ponting went for 12 to paceman Dale Steyn the writing was on the wall for the visitors with two days to go.
In other Test action on Saturday, India scored their first victory in New Zealand for 33 years as they beat the home side by 10 wickets in Hamilton.
New Zealand were bowled out for 279 in their second innings with Harbhajan Singh taking 6-63, leaving India just 39 for victory on the fourth day.
India had taken a lead of 241 on first innings after Sachin Tendulkar's magnficent 160, his 42nd Test century.