Kevin Anderson produced an astonishing fightback from two sets down to beat eight-time champion Roger Federer 2-6, 6-7(5), 7-5, 6-4, 13-11 in a quarter-final cliffhanger at Wimbledon on Wednesday.
The big South African's hopes looked forlorn as Federer skipped through the opening two sets on Court One with his usual panache but he turned the match on its head to cause the biggest shock yet in a tournament full of upsets.
It was his first win against Federer at the fifth attempt and means he is the first player representing South Africa to reach the semi-final here since Kevin Curren in 1983.
Eighth-seed Anderson, 32, saved a match point in the 10th game of the third set and grew in confidence against an increasingly-ragged Federer who had won the first set in 26 minutes.
He won the third set to snap Federer's 34-set winning streak at Wimbledon and Federer was clearly shaken as Anderson dominated the fourth set to drag the 20-times Grand Slam champion into a decider.
Six times Anderson was required to hold serve to stay alive and each time he was equal to the task.
Federer eventually cracked at 11-11, double-faulting to hand Anderson a break point which he converted when the defending champion hit a weary-looking forehand halfway up the net.
Anderson stayed cool and sealed victory on his first match point with a powerful first serve which Federer could only return into the tramlines.
Nishikori flatters to deceive against Djokovic
Earlier, three times champion Novak Djokovic won through to the Wimbledon semi-finals for the eighth time, and his first since 2015, with a 6-3, 3-6, 6-2, 6-2 defeat of Japan's Kei Nishikori.
The 12th-seeded Serb was warned by umpire Carlos Ramos for bouncing his racquet off the baseline early in the second set, with words exchanged at the change of ends as his frustration began to show.
Nishikori, the 24th seed who saved three break-points to hold serve at 2-1 in the second set, promptly broke and then held to go 4-1 up.
The Japanese, playing Djokovic on grass for the first time and seeking to end a 12-match losing streak against the Serb, held serve in the third set to 3-2 before running out of steam to go 4-2 down against an opponent in merciless form.
With Nishikori serving to stay in the match, Djokovic wrapped things up after two and a half hours on centre court on the first match point.