South Africa's fiery seamer Duanne Olivier took five wickets as the hosts powered into the ascendancy on day two of the third and final Test against an outgunned Pakistan at the Wanderers on Saturday.
South Africa, seeking a clean sweep of the series, went to the close on 135 for five in their second innings, a lead of 212 runs in a Test that is rapidly moving forward with 25 wickets falling in only six sessions.
Hashim Amla (42 not out) and Quinton de Kock (34 not out) will seek to set the tourists a challenging target on day three.
Olivier was the pick of the bowlers for South Africa with 5-51 as his pace and steep lift off the wicket restricted Pakistan to 185 in their first innings, the visitors losing their last five wickets for 16 runs.
Babar Azam (49) and captain Sarfraz Ahmed (50) mounted an excellent fightback after lunch with a 78-run sixth-wicket partnership in 10 overs before the latter edged seamer Kagiso Rabada (2-41) to Amla at second slip, precipitating a collapse.
SCORES IN BRIEF
SOUTH AFRICA: First innings 262 and second innings 135 for 5 (Markram 21, Amla 42 not out, Bavuma 23, De Kock 24 not out; Ashraf 2-19)
PAKISTAN: First innings 185 all out (Imamul 43, Azam 49, Sarfraz 50; Philander 3-43, Rabada 2-41, Olivier 5-51)