Mark Wood moved England into an impregnable position on day two of the fourth Test against South Africa, scoring important late runs before helping himself to three wickets at the Wanderers.
Having posted exactly 400 Joe Root's side reduced their hosts to 88 for six, well set to enforce the follow-on for the second game in a row and replicate last week's heavy win at Port Elizabeth.
Root (59) and Ollie Pope (56) set the tone with fluent half-centuries in the morning but it was a last-wicket stand of 82 in just 50 balls between Wood and Stuart Broad that really hurt South Africa.
The pair shared seven sixes and four boundaries as they turned a competitive score into a powerful one, hammering away at their opponents' morale with every blow.
Wood was 35 not out at the change and was on hand to take advantage personally, breaking 94mph as he took three for 21.
After a 45-minute rain delay England resumed on 192 for four, with Pope on fire in a dominant first hour. He timed the ball masterfully from the off, slicing Vernon Philander and Beuran Hendricks through the infield for four, then allowing both feet to leave the ground as he carved the ball to the third-man boundary.
He reached his fifty in 61 balls, stepping inside the line of Anrich Nortje's bouncer and pulling into the gap between two boundary riders.
Root had started quietly but soon got the bug, taking Dane Paterson for three boundaries in an over as he followed along to his 47th half-century. The pair's stand was worth 101 at the drinks break and that was as far as it went, Nortje fighting back on his way to a career-best return of five for 110.
Pope attempted to leave the first ball after the restart but left the bat out long enough to drag down the stumps, while Root was caught on the drive having already seen one chance go down at slip.
Sam Curran came and went for a golden duck, unwisely chasing a wide one, and suddenly Nortje had turned 258 for four into 269 for seven.
As the last recognised batsman Jos Buttler should have been the one to take control, but with 20 under his belt he aimed a horrible hack at Nortje and was caught at cover. A master of the white-ball game, Buttler's output in the Test arena continues to trend downwards and a change may now come in Sri Lanka.
Chris Woakes made 32 before becoming the final piece in Nortje's well-deserved five-for, his first for South Africa, and the end seemed close at 318 for nine.
Wood and Broad had different plans and proceeded to pound the tiring seamers all over the ground.
Wood had smashed five sixes on his comeback last week and as was at it again, blazing two over the covers and and plonking one over square-leg.
Broad took a shine to Paterson, launching him for three sixes before he was caught aiming for the stands. Both batsmen were clearly eager to get back to their day job with ball in hand, sprinting from the field as soon as the catch was held.
It took 19 overs either side of tea to convert that enthusiasm into a wicket, Pieter Malan and Dean Elgar seeing off the new ball before Wood forced the issue. With just two balls left in the final over his spell he roared in and hurled one into the channel at 94.4mph, too quick and too good for anything other than the edge of Malan's bat.
Job done Wood made way for Curran, who proceeded to send back Rassie van der Dussen for a duck via an awkward prod to second slip. When Elgar followed for 26, guilelessly helping a wide delivery from Stokes to backward point, things were beginning to look irretrievable.
Faf du Plessis, wearing the burdens of captaincy heavily, would have loved to calm his side with a long, assured knock but instead found himself beaten by Woakes' seam movement and on the wrong end of a tight lbw decision. He was gone for three, muttering to himself as he went.
Wood had enough left for one more blast under the floodlights and used it to pick off Temba Bavuma and Nortje, caught by Stokes and Joe Denly respectively.