World number one Rafael Nadal was forced to dig deep as he maintained his perfect semi-final record in 2017 with a hard-fought victory over Grigor Dimitrov at the China Open.
In booking a final meeting against either Nick Kyrgios or Alexander Zverev, Nadal made it nine wins from as many last-four ties this season.
Yet the Spaniard was certainly pushed by Dimitrov, whose only success in nine previous clashes between the two came in the quarter-finals of this tournament 12 months ago.
On this occasion, Dimitrov fought back impressively from a set and a break down to force a decider, his improvement coinciding with a dip in form from his opponent.
However, Nadal - a champion in Beijing 12 years ago - ultimately got back on track to win an absorbing encounter 6-3 4-6 6-1.
There were frequent flashes of brilliance from Nadal early on, but the match really sprung to life as Dimitrov responded impressively to a nightmare start in the second set.
After making three unforced errors on his way to being broken to love, the Bulgarian refused to give in and raised his level to deservedly pull level as the intensity rose.
Nadal was a different animal in the decider, though, and the outcome was inevitable once he opened up a 4-0 lead.
A hugely entertaining contest still had more to offer as Dimitrov pulled off a sensational backhand winner falling to the ground with the match virtually beyond him.
Nadal simply responded with some sensational strokes of his own, before wrapping up victory in two hours and 16 minutes.