Tomas Berdych set up a desert showdown against top-seed Novak Djokovic after overcoming defending champion Roger Federer at the Dubai Tennis Championships.
Berdych defeated the five-time champion 3-6 7-6 (7) 6-4 in two hours and 19 minutes on the super-fast surface to reach his second ATP tour final in a row, but only after Federer squandered three match points.
Third seed Berdych has now defeated the Swiss ace in five of their eight meetings since 2010, including two in Grand Slam competition.
The 17-time Grand Slam winner was in clinical form early on and comfortably broke his opponent to claim the opening set.
However, Berdych, who lost in the final of the Marseille Open last week, broke to lead 5-3 in the second set, but Federer immediately struck back.
Berdych then took the match to the distance after showing superb composure and resolve by saving three match-points in the tie-breaker before claiming it 9-7.
The final set was edge of the seat stuff as Berdych broke to lead 3-2, before holding his nerve to serve out the match at 5-4.
He will now tackle world number one Novak Djokovic in Saturday's final.
The Serb will go into the contest as red-hot favourite as he holds a 12-1 head-to-head winning record over Berdych.