Andy Murray set up a re-run of the Wimbledon final as he dispatched Bernard Tomic 6-4, 6-4 on Friday to move into the semi-finals of the Cincinnati Masters.
The ATP number two will take on Milos Raonic, whom he beat at the All England Club last month. Murray holds an 8-4 record in the series with the Canadian, beating him four times this season.
Murray continued to fight off fatigue from his Olympic gold medal win last weekend in Rio.
"Conditions help a bit. There are not a lot of long rallies. I have a few days off when this week is done and then I'll prepare for the US Open," Murray said.
"I knew that coming straight from the Olympics, I was going to be tired. But I've still managed to win."
Murray has won 21 games on the trot, standing 32-1 since losing the Madrid final to Novak Djokovic last May.
Fourth seed Raonic beat Dominic Thiem 6-3, 6-4 on the back of 17 aces.
Thiem, seeded eighth, was unable to profit from a third-round walkover which he got as Gael Monfils retired with a back injury.
Raonic advanced to his seventh semi-final of 2016 in just over an hour, ending with 32 winners to 10 for Thiem. The Canadian now stands 42-10 this season.
Marin Cilic advanced to the Masters 1000 semi-final of his career as fellow Croatian Borna Coric retired after dropping the first set 6-2 a day after beating Rafael Nadal.
Cilic will take on Grigor Dimitrov, who beat new US national number one Steve Johnson 7-6 (10-8), 6-2.
Germany's Angelique Kerber moved to within two victories of her debut as the world number one on the WTA, as the second seed saw off Carla Suarez Navarro 4-6, 6-3, 6-0.
She set up a semi-final against 2015 finalist Simona Halep, who broke fifth seed Agnieszka Radwanska eight times on the way to a 7-5, 6-1 victory.
Rio Olympic silver medallist Kerber was able to turn around her quarter-final against the Spaniard after dropping the opening set.
"It all feels amazing. I'm seeing all the hard work of last few years paying off," said the 28-year-old, who also reached the Wimbledon final after winning the Australian Open.
"This is a moment for which I've been dreaming - and now I'm living the dream."
Kerber had to fight to close out the win, claiming a tight final game on a third match point after salvaging three break points.
The German, ranked 11th a year ago, refuses to get worked up about possibly seizing the top ranking from Serena Williams.
"It's been an incredible year for me. I won the Australian Open, played the Wimbledon final and got the silver medal in Rio.
"A lot of things have changed but I'm still a few matches away from number one. I'm not thinking about it, so let's see what happens in the next few days."
Czech fifth seed Karolina Pliskova reached the final four with a defeat of Russian seventh seed Svetlana Kuznetsova 6-3, 4-6, 6-2. Pliskova will face French open winner Garbine Muguruza after the Spanish fourth seed overcame Timea Babos of Hungary 6-4, 6-3.