New Zealand's batsmen made a better showing in their second innings against South Africa at Newlands - but are still staring a heavy defeat in the face.
Bowled out for 45 on the opening morning, New Zealand then allowed South Africa to reach 347-8 in reply before Graeme Smith declared shortly after lunch on the second day.
When New Zealand opener Martin Guptill departed for duck, chipping a catch to Hashim Amla at midwicket to end Dale Steyn's first over, defeat inside two days looked a distinct possibility for the tourists.
But skipper Brendon McCullum (51) and Dean Brownlie (69no) struck half-centuries to at least ensure a third day is required in Cape Town, New Zealand closing on 169-4 in their second innings, still 133 behind.
South Africa had lost centurion Alviro Petersen, bowled by Trent Boult (3-78) for 106 in the second over of the day, after resuming on 252-3.
AB de Villiers (60), Faf du Plessis (15) and Dean Elgar (21) ensured the runs kept coming during the morning session and allowed Smith to make his aggressive declaration with a 302-run lead when Chris Martin (3-63) dismissed Robin Peterson (5) in the fifth over of the afternoon.
Guptill completed a miserable Test in Steyn's opening over but McCullum - in his first Test since taking over as captain from Ross Taylor - showed his team how it's done with seven fours in his 51.
McCullum went lbw to Peterson's left-arm spin and Jacques Kallis (2-19) struck twice to remove Kane Williamson (15) and Daniel Flynn (14).
Brownlie had decided to attack right from the start of his innings, racing to his fourth Test 50 from 44 balls and finishing the day unbeaten alongside BJ Watling (10no).
Is Jacques Kallis the best all-rounder in Test history?