World number one Jannik Sinner overcame Alexander Zverev in a three-set thriller to reach the final of the Cincinnati Open.
It took top seed Sinner three hours and seven minutes to seal a 7-6 (11-9) 5-7 7-6 (7-4) semi-final victory.
The 23-year-old Italian had lost all four of his previous matches against German Zverev but battled through a hip problem to advance to the final.
Sinner will face American Frances Tiafoe on Monday at about 23:00 BST for the chance to win his fifth ATP tour title this season.
Tiafoe, 26, defeated 15th seed Holger Rune of Denmark 4-6 6-1 7-6 (7-4) in the other semi-final.
Following his gruelling game with 27-year-old Zverev – which was interrupted by rain – Sinner said he still has work to do in terms of his fitness.
“The physical aspect, of course, I have to improve, because if I want to win Grand Slams or a bigger title I have to be, for sure, more in shape,” he said.
“But I just tried to stay there mentally, which I’m very proud of – and let’s see what’s coming [on Monday].”
Sinner is aiming to win his second major championship this year when the US Open starts on 26 August in New York.
After losing the opening set on a tie-break, Zverev took the second set before going 5-4 up in the third.
However, Sinner rallied to win three of the next four games to force another tie-break where he broke world number four Zverev’s serve twice on his way to victory.
“Sometimes you have to play a bit with the gut feeling. And I think this today was my strength,” Sinner said.
“It was a good match, I think for both of us. He served very, very well so I can be very proud.”