Roger Federer survived a scare by coming from two sets behind to beat Gael Monfils 4-6 3-6 6-4 7-5 6-2 to reach the semi-finals of the US Open.
Monfils had two chances to knock out the former world number one in the fourth set, but Federer responded impressively to book his place in the last four on a thrilling night in New York.
Federer put the pressure on his French opponent early on in the opening set, and it came as a surprise to the crowd when Monfils made the breakthrough in the fifth game.
One break of serve would prove to be enough for Monfils, who served out for what appeared to be a vital lead at the time.
Minor surprise soon turned to shock for the fans watching as Federer was broken in the opening game of the second set, and the gung-ho tactic from Monfils would work again as he broke once more in the ninth game to take a 2-0 lead.
Federer finally produced a response to his rival's strokes, but an early break was soon wasted as Monfils fought back admirably.
However, the second seed managed to quickly break back, and there were clear signs that he was starting to find his range as he served out in the third set to reduce the deficit.
The back-and-forth nature of the contest continued as the two players exchanged breaks early in the fourth set, but there was still plenty of drama to come.
A couple of errors from Federer gifted two match points to Monfils, who was left frustrated after seeing his opportunity to reach the semi-finals slip away.
Federer quickly wrapped up the fourth set with another break of serve, and he did the same early in the decider to steal the advantage from a tiring Monfils.
The momentum was with Federer, and he was barely troubled on serve, while Monfils was broken once more as the gap between the two players widened.
It was a comfortable finish on a tricky night for Federer, who will now take on Marin Cilic for a place in the final.