Novak Djokovic remains on course to become the first man to win all nine Masters 1000 events after beating Marin Cilic to reach the final in Cincinnati.
Djokovic only needs this title to complete the set but he had to fight hard to overcome Cilic 6-4 3-6 6-3 on Saturday.
The result sets up a final - Djokovic's sixth in Cincinnati - against the winner of the second semi between Roger Federer and David Goffin.
The downpours of earlier in the week were a distant memory as fans baked in the heat, and the sun certainly shone on Djokovic early on as Cilic sent a sliced backhand wide to hand the Serbian his first break in the third game.
Djokovic battled to preserve his break advantage during a sixth game in which he faced break point and an eighth that reached a fourth deuce, before wrapping up the opener with his first set point as Cilic overcooked a backhand.
Cilic quickly put that set behind him to race into a 3-0 lead at the beginning of the second.
A double break put the Croatian firmly in control of the set and, despite allowing Djokovic to pull one back, Cilic levelled the match at the third time of asking.
A Cilic forehand into the net handed Djokovic the initiative in the decider but a dispute with ATP Tour supervisor Tom Barnes at the side of the court - perhaps about the noise coming from a nearby concert, which had previously drawn the ire of the former world number one - seemed to distract him in the next.
After battling back to deuce from 40-0 down on his own serve, a double fault from Djokovic saw Cilic pull level.
But the 10th seed quickly regained focus and, having moved 5-3 in front, converted his second match point to book his place in Sunday's final.