Brisbane - Swiss great Roger Federer overcame the effects of a recent illness and a tenacious Grigor Dimitrov to book a place in the semi-finals of the Brisbane International on Friday.
Federer, the defending champion, edged Dimitrov 6-4, 6-7 (4/7), 6-4 in his fourth consecutive win over the Bulgarian.
After racing through the first set with a display of almost perfect tennis, Federer, who has been battling illness this week, seemed to tire in the second as Dimitrov grew in confidence.
But the 17-time Grand Slam champion dug deep in the third, breaking Dimitrov in the fifth game and holding on to win in two hours, seven minutes.
The Swiss champion conceded he wasn't 100 per cent during the match.
"It was tough in a way. The body is not quite ready, you know, so it's good to get through it without any issues," he said.
"But, yeah, physically it was difficult."
Dimitrov hadn't managed to take a set off his opponent in their three previous meetings and he looked to be heading to another straight sets defeat as Federer put on a dazzling display of power and precision.
The former world number one conceded only two points on serve in the first set and put enormous pressure on Dimitrov, who cracked when serving at 4-5 to hand Federer the opener in 35 minutes.
However, Federer began to tire in the second and Dimitrov picked up the pace, forcing the set to a tiebreak before pouncing on some loose serving to level the match.
Federer lifted in the third then took advantage of a concentration lapse from Dimitrov in the fifth game to secure the vital break.
"I thought I played really well considering, and sort of caught a second wind in the third set," he said.
Federer will take on Austrian Dominic Thiem in Saturday's semi-final after the eighth seed stunned former US Open champion Marin Cilic 2-6, 7-6 (7/4), 6-4.
Earlier, Australia's Bernard Tomic showed his improvement with a three-set quarter-final win over Kei Nishikori.
Tomic delighted his home fans when he ousted the second-seeded Nishikori from Japan 6-3, 1-6, 6-3 in a shade under two hours, putting him into a semi-final showdown against huge-serving Canadian Milos Raonic.
Tomic powered through the first set before Nishikori fought back to take the second.
But after both players struggled to hold serve at the start of the third, Tomic took control and eased away to claim the match.
The win came almost 12 months to the day after Nishikori thumped Tomic 6-0, 6-4 at the same stage of last year's Brisbane tournament, and almost certainly assures Tomic a top 16 seeding for the Australian Open.
"I had the opportunity to play him last year and it was a different level for me today," said Tomic.
"I've improved so much."
Fourth seed Raonic downed Frenchman Lucas Pouille in straight sets 6-4, 6-4 in the first match on Pat Rafter Arena.
Results of matches played at the Brisbane International tennis tournament on Friday (x denotes seed):
Milos Raonic (CAN x4) bt Lucas Pouille (FRA) 6-4, 6-4
Bernard Tomic (AUS x7) bt Kei Nishikori (JPN x2) 6-3, 1-6, 6-3
Dominic Thiem (AUT x8) bt Marin Cilic (CRO x3) 2-6, 7-6 (7/4), 6-4
Roger Federer (SUI x1) bt Grigor Dimitrov (BUL) 6-4, 6-7 (4/7), 6-4