Roger Federer won a thrilling three-hour contest against Nick Kyrgios to set up a final against Rafael Nadal at the Miami Open.
The Swiss, 35, won 7-6 (11-9) 6-7 (9-11) 7-6 (7-5) to take his 2017 record to 18 wins and one defeat.
Federer will take on Nadal for the 37th time on Sunday, and the second final this year after beating the Spaniard at January’s Australian Open.
Nadal, 30, beat Italy’s Fabio Fognini 6-1 7-5 in the first semi-final.
Fognini, 29, had become the first unseeded player in 10 years to make the last four but was no match for Nadal, who will try to win a first Miami title in his fifth final on Sunday.
“It’s great to be in the final for me,” said Nadal after winning the first of the semi-finals. “I am excited to play another final of an important event.
“If it’s Roger, it’s going to be another one for both of us, and that’s it. Just another one.”
Federer made sure that there will be another episode to his rivalry with Nadal, which began in Miami 13 years ago.