Bairstow added 41 runs to his overnight total to propel England, who resumed the day on 238-5, to 323 despite losing overnight partner Joe Root (110) early in the first session. South Africa, who scored 313 in their first innings, were 16 without loss at lunch as they went about setting England a formidable target to give themselves a chance to level the series.

Dean Elgar (10) and Stiaan van Zyl on six were not out at the start of their second innings1. The 20-year-old Rabada added three wickets on Saturday to finish with figures of 5-78 as he dismissed Root, Stuart Broad and took the last wicket of Bairstow.

Root added just four runs to his overnight total before getting a feint inside edge to an in- winging delivery as the home side made an early breakthrough on a cloudy morning.

He reviewed the umpire's decision but technology showed a snick to the delight of home supporters after Root had dominated the second day with his unbeaten century.

Moeen Ali (19) dispatched three lusty boundaries in a quick appearance at the wicket before edging a delivery from Chris Morris that saw wicketkeeper Dane Vilas pull off a stunning diving catch.

Rabada then bowled Broad with a fullish delivery for 12 as England edged towards South Africa's score. Steven Finn got the slightest touch off his gloves to a rising delivery from Morne Morkel and was caught behind without scoring. His dismissal was only confirmed after South Africa reviewed the umpire's original not out decision.

Bairstow then swung his bat to knock off the deficit and build up a slender lead before pulling high to mid-wicket where Van Zyl caught him to end the innings. Play began 30 minutes early on Saturday in an effort to make up time lost when bad light and then rain brought a premature half to Friday's play.

Latest News from Sports News Desk