World No 3 Roger Federer took one step closer to his first title of the season by coming from behind to beat Tommy Haas in three sets in the Gerry Weber Open.
Defending champion Haas took the opening set 6-3 in Germany on Saturday before the five-time Halle champion fought back to win the following sets 6-3 6-4 and book a place in Sunday's final.
Federer, whose loss in the 2012 final was his first defeat to Haas in 10 years, squandered two break points at 5-2 in the first set as the German served out to take the lead.
The 31-year-old Swiss turned the tables in the second set however, racing to a 3-0 lead after breaking Haas, who has already won in Munich and reached the last eight of the French Open this season having adopted a more aggressive style of play.
Having drawn even, Federer continued to apply the pressure and earned another break when Haas double-faulted twice in a row to give the 17-time grand slam champion a 3-1 lead as he powered his way into the final.
"I felt good out there and as I had predicted it was a tough match," Federer said.
"I have not won a title this year, twice I have lost here in the final in the past years. It will not be easy but I am really looking forward to it."
Federer will now face Mikhail Youzhny in the final after the Russian upset second-seeded Frenchman Richard Gasquet 6-3 6-2.
Youzhny, who has lost all 14 past encounters against Federer, broke Gasquet early on to race to a 4-1 lead in the first set.
Two quick breaks in the second took him away from the Frenchman, and the world No 29 wrapped it up in just under an hour for his first final appearance of the year.