Christiaan Bezuidenhout put himself on course for back-to-back European Tour titles with a third-round 67 at the South African Open.
The 26-year-old, who captured the Alfred Dunhill Championship at Leopard Creek last weekend, remained in fine form as he surged five shots clear at Gary Player Country Club.
Bezuidenhout's five-under-par round saw him reach 15 under and move ahead of closest challengers Dylan Frittelli and Jamie Donaldson.
Wales’ Donaldson had started the day level with Bezuidenhout and the pair jostled for the lead over the front nine before the South African pulled away.
Former Ryder Cup star Donaldson led by two after he birdied the second from 15 feet and added a further gain on the fifth.
However, it was all change before the turn as Bezuidenhout made birdies from 30 feet at the sixth and five feet at the seventh before Donaldson bogeyed the eighth after finding a bunker with his approach.
Bezuidenhout stretched that advantage on the back nine, making further gains on the 10th, 15th and last.
In contrast Donaldson hit several wayward tee shots and dropped further shots at the 10th, 11th and 16th, although birdies at the 15th and 18th gave him a level par 72 to keep his fading title hopes intact.
Frittelli mixed five birdies with three bogeys as he signed for a round of 70, with his fellow South Africans Dean Burmester and JC Ritchie tied for fourth on nine under after shooting 71 and 66 respectively.
“I’m really happy to be in this position,” said Bezuidenhout. “I’ve played three solid rounds of golf and have stuck to my game plan by not taking the golf course on and just keeping it in play.
“I’m just trying to manage myself. I just need to hold up for another 24 hours. But it’s amazing to be in this position.”
Leaderboard
British and Irish unless stated, par 72, (x) denotes amateur
201 Christiaan Bezuidenhout (Rsa) 67 67 67
206 Jamie Donaldson 71 63 72, Dylan Frittelli (Rsa) 68 68 70
207 Dean Burmester (Rsa) 67 69 71, JC Ritchie (Rsa) 70 71 66
208 Hennie Du Plessis (Rsa) 70 70 68, Scott Vincent (Zim) 72 69 67
209 Joost Luiten (Ned) 72 67 70, Ruan Korb (Rsa) 67 72 70
210 Marcel Siem (Ger) 74 68 68, Jacques Kruyswijk (Rsa) 67 72 71
211 Connor Syme 72 70 69, Julien Guerrier (Fra) 73 69 69, Aaron Cockerill (Can) 71 68 72, Wilco Nienaber (Rsa) 69 74 68, Matthias Schwab (Aut) 67 72 72
212 Justin Walters (Rsa) 69 72 71
213 Jaco Ahlers (Rsa) 70 75 68, Brandon Stone (Rsa) 73 68 72, Scott Jamieson 70 74 69
214 Peter Karmis (Rsa) 72 69 73, Aron Zemmer (Ita) 67 75 72, Benjamin Follet-Smith (Zim) 72 71 71, Darren Fichardt (Rsa) 74 73 67, Ruan Conradie (Rsa) 74 68 72
215 David Law 71 71 73, MJ Viljoen (Rsa) 70 75 70, Jbe Kruger (Rsa) 72 73 70, Calum Hill 77 66 72, Louis De Jager (Rsa) 75 71 69, Jean-Paul Strydom (Rsa) 76 67 72, Richard Sterne (Rsa) 75 69 71
216 Jacques Blaauw (Rsa) 74 69 73, Oliver Bekker (Rsa) 70 73 73, Gonzalo Fernandez-Castano (Esp) 70 72 74
217 Anthony Michael (Rsa) 73 69 75, Sebastian Garcia Rodriguez (Esp) 72 72 73, (a) Austin Bautista (Aus) 71 72 74, Steve Surry 72 72 73, Alvaro Quiros (Esp) 75 70 72
218 Luke Brown (Rsa) 71 75 72, (a) Casey Jarvis (Rsa) 73 74 71, Pedro Figueiredo (Por) 76 68 74, George Coetzee (Rsa) 73 74 71
219 Richard Bland 72 74 73, Ulrich Van Den Berg (Rsa) 72 74 73, Benjamin Poke (Den) 75 69 75, Pablo Larrazabal (Esp) 72 72 75, Darius Van Driel (Ned) 76 71 72, Stanislav Matus (Cze) 76 71 72, Deon Germishuys (Rsa) 74 71 74, Jayden Trey Schaper (Rsa) 73 73 73, Nicolai Hojgaard (Den) 72 74 73
220 Michael G Palmer (Rsa) 73 73 74, Shaun Norris (Rsa) 75 69 76, Matthieu Pavon (Fra) 68 78 74, MJ Daffue (Rsa) 72 72 76, Robin Roussel (Fra) 72 75 73, Shubhankar Sharma (Ind) 74 73 73, Rourke Van Der Spuy (Rsa) 73 72 75, Stephen Ferreira (Por) 70 76 74
221 Ockie Strydom (Rsa) 74 70 77, James Kingston (Rsa) 71 73 77, Neil Schietekat (Rsa) 69 75 77, Martin Rohwer (Rsa) 70 75 76, Daan Huizing (Ned) 72 74 75, Matias Calderon (Chi) 74 73 74
223 Jesper Sandborg (Swe) 73 73 77, Jean Hugo (Rsa) 74 73 76
224 Toby Tree 69 76 79, Thriston Lawrence (Rsa) 76 70 78