Doha - Simona Halep won five games in a row in the deciding set of an astonishing match against Elina Svitolina in Doha on Friday to power through to the Qatar Open final.
Seemingly down and almost out at 1-4 in the third set, world No 3 Halep was roared on by a large and noisy set of Romanian fans to secure a remarkable 6-3, 3-6, 6-4 victory over the Ukrainian.
She will play Belgium's Elise Mertens in Saturday's final after the world No 21 surprisingly beat three-time Grand Slam champion Angelique Kerber 6-4, 2-6, 6-1 in the other last four match.
Halep described her dramatic win as "unbelievable".
"I didn't give up, I promised myself I would never give up against her again because I lost two matches very bad," said Halep.
She added: "She played amazing. She moved very well, she hit the ball strong, she didn't miss much.
"So I think was at a very high level of tennis today, and I'm really proud that I could win the match against her."
It was her first win against the world number seven since 2017.
The Romanian will now play her 34th career final and will rise to the rank of number two in the world whatever the result.
Mertens' victory was the second time this week she has beaten a player in the top 10, having dispatched world No 8 Kiki Bertens in the quarter-finals.
The Qatar final will be her sixth singles' career final and she has only lost one of those, in Turkey in 2017 to Svitolina.
"I knew it was going to be a really difficult match to play," said Mertens.
"I mean, I had to play aggressive, stay on my line, because she can put that one ball back in the court."
In a tournament blighted by injury and withdrawals, with some players complaining about workload, it is notable that both Halep and Mertens played Fed Cup matches last weekend before flying straight to Doha.
"I think it really helps when you play Fed Cup," added Mertens. "I didn't win my matches but... I worked hard that week."
Results from the WTA Qatar Open in Doha on Friday (x denotes seeding):
Simona Halep (ROM x1) bt Elina Svitolina (UKR x4) 6-3, 3-6, 6-4
Elise Mertens (BEL) bt Angelique Kerber (GER x3) 6-4, 2-6, 6-1