Cheteshwar Pujara slammed a sparkling unbeaten 135 as India gained firm control of the first cricket Test against South Africa with the top-order showing remarkable application to give the visitors a substantial overall lead of 320 here today.
The Indians first bundled out the hosts for 244 for a slender first innings lead of 36 runs and then batted with purpose and maturity to reach 284 for two at close on an eventful third day's play with Pujara again showing his apetite for a big score with an unbeaten knock of 135.
The 25-year-old Pujara notched up his sixth Test century while the in-form Virat Kohli is looking good for another big score as he is batting on 77.
The duo put on 191 runs for the unbroken third-wicket stand in only 44.1 overs as South Africa were dealt with a telling blow of Morne Morkel being ruled out of the match due to a ligament tear in his ankle while fielding.
Pujara, who was dropped on 51 by leggie Imran Tahir off his own bowling, made full use of the reprieve as he hit 18 boundaries in 221 balls.
Unlike the first innings, Kohli played second fiddle to Pujara hitting eight fours off 132 balls.
South African captain Graeme Smith was forced to juggle an attack in which spin bowlers Imran Tahir and JP Duminy were ineffective, even turning to wicketkeeper AB de Villiers for one over before tea.
With two full days left in the game, the visitors will now try to extend the lead further by piling up some quick runs and then hope to dismiss the Proteas who will have to bat last on a deteriorating Wanderers track.
The foundation was laid by Pujara and Murali Vijay (39) during a watchful second wicket stand of 70.
South Africa's only successes came from Philander and Jacques Kallis, who dismissed Shikhar Dhawan and Vijay respectively.
India's imposing second innings came after Zaheer Khan and Ishant Sharma finished with four wickets apiece as South Africa were bowled out for 244, giving India a first innings lead of 36.
South Africa made a confident start to the day after resuming on 213 for six, with Philander punching two short-pitched deliveries from Ishant Sharma through the covers for four. The first boundary brought up his third Test half-century.
Sharma and Khan soon found their rhythm, again bowling mainly to a full length on a pitch with unpredictable bounce.
The left-armed Khan made a ball nip away off the seam to have Philander caught behind for 59, made off 86 balls with seven fours. It ended a seventh wicket partnership of 80 with Faf du Plessis.
Steyn struck two boundaries before fending a sharply-lifting ball from Ishant Sharma to Rohit Sharma at third slip.
Du Plessis was caught behind off Khan after making 20 off 77 balls and Khan wrapped up the innings when he bowled Morkel.
Zaheer (4/88) took three of the remaining four wickets as South Africa could add only 31 runs to their overnight score of 213 for six.
Zaheer now has 299 wickets in Test matches and will need only one more to become the fourth Indian bowler after Kapil Dev, Anil Kumble and Harbhajan Singh to enter the '300-club'. Ishant Sharma also picked up a wicket today to end up with impressive figures of four for 79.