Roger Federer pulled off a stunning fightback to beat Borna Coric 5-7 6-4 6-4, reaching the Indian Wells Masters final and maintaining his perfect record in 2018.
This was the world number one's 17th consecutive win to start the year - the best such run of his career - but no previous opponent has tested him like Coric did in California on Saturday.
Indeed, the 49th-ranked 21-year-old looked well on course for a major scalp as a run of five consecutive games saw him take the first set and break to open up a lead in the second as he closed in on just a fourth ATP Tour final.
But a few errors crept into Coric's game, the likes of which Federer routinely punishes, and a commanding lead was gone in a flash as the top seed turned the match on its head with consecutive breaks to level the contest.
Federer then came from behind to edge the third set of a compelling match and ensure there would be no repeat of Simona Halep's shock exit in the women's draw, with either Milos Raonic or Juan Martin del Potro now next up in the final.
Back from the Fed— BNP Paribas Open (@BNPPARIBASOPEN) March 17, 2018
World No. 1 Roger Federer battles back from behind to win three-set thriller over Borna Coric 5-7 6-4 6-4.
He’s through to his historic *EIGHTH* Indian Wells final. #BNPPO18 pic.twitter.com/rQrmodB9yZ
The pair were evenly matched early on as they comfortably held serve until, at 5-5, the underdog ramped up the pressure and broke Federer at the second attempt, allowing him to clinch the set in the following game after an erroneous call had initially denied him a perfectly good winner.
The Croatian broke Federer's serve in the first game of the second set, too, before maintaining control as he came charging back from 40-0 down to save the three break points and hold serve to make it 3-1.
Coric appeared to have a response to everything as he again rescued a break point in his next service game but, roared on by a partisan crowd, it was third time lucky for Federer, who was able to level the set at 4-4 and then ruthlessly punish the reeling youngster when he next served to take the match to a decider.
It looked as though the pendulum had swung again when Coric broke the Swiss to love in the opening game of the third, but back came Federer to draw level after a magnificent point in the second game.
Although Coric's resolve remained and he broke again to lead 4-3, a double-fault allowed Federer to promptly level matters.
And the veteran ultimately outlasted his opponent as Coric attempted to serve to stay in the match, nervy errors ending the unseeded talent's fight as Federer claimed the first of three match points.
"I got a bit lucky," Federer conceded on court, but he certainly earned a slice of fortune after a historic start to the season.
|Nadal encourages patience in young stars after humbling De Minaur|
|NFL playoffs 2019: 10 Opta facts for Patriots v Chiefs|
|Robertson helping Klopp learn Scottish for Dalglish chats|
|BREAKING NEWS: Levante appeal over alleged ineligible Barcelona player rejected|
|NFL Playoffs 2019: 10 Opta facts for Rams v Saints|
|Lowry to take three-shot Abu Dhabi lead into final round|
|Training is not for anyone else - Klopp condemns Bielsa over ´spygate´ row|
|In other countries, everybody does it - Guardiola respect remains for spying Bielsa|
|Cilic battles back to join Nadal, Federer in fourth round|
|Klopp: Trent unbelievable for playing through pain|
|Faulkner provides super start and fabulous finish to sink Scorchers|
|Ref admits error in key foul call on Lonzo Ball in Lakers-Thunder game|
|Marina Granovskaia is working very hard – Sarri ´confident´ of January signings|
|Tuchel confirms Rabiot out of PSG contention|
|Madrid derby kick-off confirmed for February 9|
|Benzema fit to face Sevilla despite broken finger, Solari confirms|
|Bournemouth boss Howe says no offers received for Wilson|
|Kerber cruises after Wozniacki, Sabalenka upsets|
|Mbappe a great player and great person, says beaming Beckham|
|Gracia confident someone will step up if Doucoure leaves for PSG|
|Albrighton signs new Leicester deal|
|Niasse joins Cardiff on loan from Everton|
|Hendrick credited with Fulham strike|
|Western Sydney Wanderers 1 Adelaide United 2: Goodwin compounds Wanderers woes|
|Chahal and Dhoni carry India to ODI triumph|
|Levante report Barcelona for alleged use of ineligible player in Copa del Rey|
|Solskjaer regrets Sanchez´s Reading setback|
|Tomic brands Hewitt a ´liar´ as feud continues|
|Ruthless Nadal thrashes teenager De Minaur|
|Wozniacki enjoyed status as defending champion in Melbourne|
|Solskjaer backs Mourinho to return to football´s big time|
|Murray to miss Open 13 Marseille|
|Solskjaer´s United turnaround no easy task, says Hughton|
|The big Friday Premier League quiz|
|How James Harden´s 2018-19 numbers compare to his MVP campaign|
|It´s insane! - Tsitsipas excited to face ´legend´ Federer|
|Sharapova ends Wozniacki title defence|
|American teen Anisimova sends records tumbling at Aus Open|
|Lakers survive Ball´s gaffe to beat Thunder in OT|
|Federer expects ´athletic´ and ´attacking´ Tsitsipas clash|
|Alcacer is fit and available – Favre|
|Fantastic Federer breezes past Fritz|
|Pogba happy with Man United approach under Solskjaer|
|Mickelson leads Desert Classic, ties career-low with 12-under 60|
|Warriors´ Durant on Curry: He´s a once-in-a-generation, once-in-a-lifetime talent|
|Patriots owner says Brady is greatest player, not just quarterback, of all time|
|Inglis to retire from representative duty this year, NRL in 2020|
|Is Beal better without Wall? Wizards star says it´s ´absolutely nonsense´|
|Rockets C Capela undergoes thumb surgery, expected back after All-Star break|
|This Week in U.S. Sports: Irving apologises, Machado´s agent isn´t happy|
|Knicks in woeful shape, but 2019 could still be bright in New York|
|Valverde not worried about Levante´s Copa appeal|
|Nowell an option for England at flanker, reveals Jones|
|Pellegrini: Arnautovic available for the right price|
|Knicks throw away 19-point lead and lose on last-second goaltending call|
|Tebow invited back to Mets´ major league spring training|
|Canelo and Jacobs agree unification fight|
|Barcelona 3 Levante 0 (4-2 agg): Dembele at the double as Barca advance|
|Levante to lodge complaint over Barcelona Copa selection|
|Kanter´s London absence ´very unfortunate´, says NBA commissioner|
|NBA could swap London for Paris in 2020|
|Spurs coach Popovich uncertain if he will return next season|
|Pistons´ Griffin fined for verbal abuse of official|
|Everton do not have financial conditions to enter transfer market - Silva|
|Andy Cole joins Sol Campbell´s coaching staff at Macclesfield|
|Atletico confirm Saul has thigh injury|
|Wood replaces injured Stone in England squad|
|Lebanon 4 North Korea 1: Disciplinary record cruelly denies Radulovic´s men|
|Saudi Arabia 0 Qatar 2: In-form Ali bags brace as Qatar top group|
|Robertson signs new Liverpool deal|