Jacques Kallis continued his rich run of form by collecting his 40th Test century and second of the third Test against India to put South Africa on top after day four in Cape Town. The veteran all-rounder was unbeaten on 109 when the hosts were all out for 341 to set a target of 339.
Harbhajan Singh finished with seven wickets but his efforts were overshadowed by Kallis ahead of what now promises to be an enthralling final day on a fast-deteriorating Newlands pitch.
The 35-year-old, who shared in a vital partnership of 103 with Mark Boucher (55) and put on 54 with Dale Steyn (32) and 46 with Morne Morkel (28), achieved several landmarks along the way.
He became the first player from his country to score hundreds in each innings of the same match on home soil, while his third century of the series also saw him surpass the highest aggregate of runs by a South African for a three-match contest with 498 – Daryll Cullinan's 427 against New Zealand in 1999 was the previous best.
He also moved clear of Ricky Ponting into second place for the most Test centuries – Sachin Tendulkar leads the way with 51.
The feats of Kallis, who battled throughout his innings with a side strain, looked unlikely earlier in the day when Alviro Petersen (22) and Hashim Amla (two) both fell cheaply as South Africa slumped from 52 for two overnight to 64 for four.
Days four and five at Newlands favour spin and Harbhajan (seven for 120) exploited the conditions to perfection. There was even a wicket for Tendulkar's part-time spin when he removed Boucher.
For Kallis, though, the records kept tumbling with a single raising his 100 from 228 balls, the second time he has achieved two hundreds in a game after doing it against Pakistan in Karachi during 2007.
But Harbhajan grabbed the last two wickets – Morkel and Lonwabo Tsotsobe (eight) – with what proved the day's final deliveries.Reuse content