World number one Novak Djokovic recovered from a first-set loss to overcome Germany's Mischa Zverev while Britain's Andy Murray swept past Belgium's David Goffin to reach the Shanghai Masters semi-finals on Friday.
Djokovic committed 37 unforced errors before labouring to a 3-6, 7-6(4), 6-3 win which set up a clash with Spain's Roberto Bautista Agut, who humbled Frenchman Jo-Wilfried Tsonga 6-3, 6-4.
Second seed Murray, who has now won 16 sets in a row in ATP events, was ruthless in his 6-2, 6-2 victory to clinch his fifth win in five matches against 11th seed Goffin.
Zverev, ranked 110th in the world, broke the Serbian in the third and ninth games to take the opening set in 40 minutes.
The 29-year-old Zverev looked on course for the biggest win of his career after taking a 2-0 lead in the second before Djokovic pounced on the German's errors to level the match.
Djokovic took a 3-0 lead in the decider, winning 92 percent of his first-serve points to seal victory in two hours and 20 minutes.
"You're trying to reach that balance between being concentrated but at the same time being kind of calm and relaxed and enjoying the moment," said Djokovic, who hummed a tune while waiting to return Zverev's serve in the latter stages.
"I was always trying to keep that optimal state of mind. Instead of the occasional tantrum that I used to have, I (switched) that vibration and transformed it in a tune."
Murray, who won the China Open last week, fired down eight aces and will face Gilles Simon in next round.
Frenchman Simon, who upstaged world number three Stan Wawrinka in the previous round, continued his fine run with a 4-6, 6-4, 7-6(5) win over American Jack Sock.