Cape Town - The Proteas will be feeling a little better about life after they lost just one wicket in the final session to end day two of the second Test against England at Newlands on 141/2.
The task at hand is still enormous - the Proteas are 488 behind going into day three - but the good news is that captain Hashim Amla finally found some form and his gritty innings of 64* was a welcomed one.
It was the first time that Amla had passed 50 since the New Years Test against the West Indies in Cape Town a year ago.
South Africa lost Stiaan van Zyl (4) to a senseless runout just before tea, but Dean Elgar and Amla then put on a 78-run second wicket stand before Elgar was out to England batting hero Ben Stokes.
The first-Test centurion looped a leading edge to Nick Compton in the 26th over, and the Proteas were 85/2.
With the sun baking down on Newlands, and the South African and English supporters both in full voice, AB de Villiers walked to the wicket.
The home side were finally on the receiving end of some good fortune when De Villiers - on just 5 - was dropped by Joe Root in the slips off the bowling of James Anderson.
It was a routine catch for Root, who almost missed the ball completely, and South Africa will be hoping that De Villiers cashes in on his chance on Monday morning.
But despite the Proteas resilience, the day will be remembered for a majestic 399-run partnership between Stokes (258 off 198) and Jonny Bairstow (150* off 191).
Stokes' knock was exhilarating, and he scored 130 runs in the first session of the day to race to his double century.
By the end of it all, Stokes had scored more runs than any other player in the morning session of a Test match, he had scored the fastest 250 in Test cricket, his 11 sixes were the most by an England batsman in an innings and he had the highest score ever by an England No 6.
His partnership with Bairstow was also the highest sixth wicket stand in the history of Test cricket.
At the end of the day, De Villiers was not out on 25, and his partnership with Amla was unbeaten on 56.