Andrew Symonds featured with both bat and ball in Melbourne on Thursday to propel Australia to the brink of victory over South Africa at the close of the fourth day of the second Test.
With one day remaining South Africa were 99 for six in their second innings chasing 366 to win.
Symonds, under pressure to retain his test place, smashed a Test best 72 and then dismissed Jacques Kallis (9) and Jacques Rudolph (4).
He combined with Matthew Hayden (137) in a 124-run partnership off 93 balls in just 66 minutes after lunch to help Australia to 321 for seven declared.
When South Africa batted, Symonds took two for six from four overs and leg spinner Shane Warne grabbed the wickets of AB de Villiers (8), Herschelle Gibbs (9) and Mark Boucher (5).
Resuming on 110 for two, Australia lost Brad Hodge (24) and Mike Hussey (31) before Hayden and Symonds went on the offensive after lunch.
Their assault on the South African attack, missing Makhaya Ntini who has been ruled out of the third Test with a knee injury, allowed captain Ricky Ponting to declare with 45 minutes remaining in the second session.
Ponting had been criticised for delaying the declaration and not giving his bowlers enough time to dismiss the South Africans in the drawn first Test.
Symonds' first scoring shot was a six over long off then Hayden, who had been on 86 not out at lunch, scored his 25th Test century when he square cut Shaun Pollock for four.
The pair then set about the South African attack, smashing several boundaries before Hayden mistimed a pull shot off Kallis and wicketkeeper Boucher took the catch.
Symonds, who had smashed five fours and six sixes in his 54-ball innings, was well caught by Andre Nel running around the mid-wicket boundary two balls later.
His six sixes are a record by a batsman in a Test innings at the Melbourne Cricket Ground. India's Virender Sehwag hit five in his 195 in 2003.
Gilchrist was the third victim in Kallis's 11th over when he skied a catch to Prince in the deep the ball after Symonds' dismissal. Kallis finished with three for 58.
Smith and de Villiers began solidly but a stumping by Gilchrist to send back de Villiers off Warne with the score on 39 sparked a collapse.
Smith was caught by Gilchrist six runs later before Gibbs was bowled by Warne to leave South Africa in trouble at 58 for three.
Kallis followed six runs later when he got a faint touch to a Symonds delivery and was caught by Gilchrist before Rudolph was bowled by Symonds with the score on 72 for five.
Boucher was then spectacularly caught at bat-pad by Ponting off Warne and while the Australians' vociferous appeals were initially turned down by umpire Asad Rauf the wicketkeeper walked.