Kevin Anderson reached his maiden grand slam semi-final with a hard-fought four-set win over Sam Querrey at the US Open.
The South African, who made the quarters in New York in 2015, battled to a 7-6 (7-5) 6-7 (9-11) 6-3 7-6 (9-7) victory over Querrey.
Anderson, a top-10 player before injuries impacted his career last year, now faces Spaniard Pablo Carreno Busta.
But he needed three hours and 26 minutes to get past Querrey in a match that finished at 01:51 local time.
A semi-finalist at Wimbledon this year, Querrey missed a chance to progress to the last four at his home grand slam for the first time.
The American was outdone in the key moments by 28th seed Anderson, who made it seven wins in 15 meetings with Querrey.
As expected, games went on serve in the first set, with the duo able to win just 15 return points between them.
Querrey appeared in control of the tie-break at 5-2 ahead, only for Anderson to reel off five consecutive points - the American sending a backhand return long on set point.
-- US Open Tennis (@usopen) September 6, 2017
The players traded breaks in the second set and a tie-break always looked set to follow.
Querrey again surrendered a big lead - this time 6-1 - in the breaker, but Anderson was left to rue a bad volley miss at 6-6 as the 17th seed finally converted his eighth set point.
Anderson was dominant in the third set, dictating against a passive Querrey to edge ahead again.
Neither player looked like breaking serve in the fourth set before Querrey saved a match point with a big serve in the tie-break.
After fending off a set point, Anderson set up another opportunity to progress, his victory sealed when Querrey sent a forehand well long.
Anderson  bt Querrey  7-6 [7-5] 6-7 [9-11] 6-3 7-6 [9-7]
Anderson - 67/45
Querrey - 44/36
Anderson - 22/3
Querrey - 20/7
BREAK POINTS WON
Anderson - 2/6
Querrey - 1/2
FIRST SERVE PERCENTAGE
Anderson - 67
Querrey - 55
PERCENTAGE OF POINTS WON ON FIRST/SECOND SERVE
Anderson - 82/60
Querrey - 81/55
Anderson - 157
Querrey - 143