World number one Rafael Nadal suffered a surprise 2-6, 7-6, 6-3 semi-final defeat by unseeded Spanish compatriot Guillermo Garcia-Lopez at the Thailand Open on Saturday.
The US Open champion looked set to cruise into the final after a polished first-set performance but had no reply to Garcia-Lopez's thrilling fightback that led to a second-set tiebreak where Nadal's game started to unravel.
The 53rd-ranked Garcia Lopez will face Finland's Jarkko Nieminen, who continued his impressive run with a 6-3, 6-2 win over Germany's Benjamin Becker to reach his first final of the season.
Nadal had only himself to blame for squandering 24 of 26 break points and making costly errors in a scintillating final set. He lost he cool and handed the advantage to his opponent midway through the gruelling two-hour, 45-minute encounter.
Garcia-Lopez sought treatment for hip and back injuries after the first set but showed his resolve by keeping Nadal at bay and frustrating him with pinpoint forehands and precise drop shots.
"I've never beaten a world number one before, this was the best match of my career," Garcia-Lopez told reporters.
"For the moment, I'm shocked. He had so many chances to break me but I stayed in the match. I played really, really good.
"Everything was moving so fast. I knew that if I thought about beating Rafa Nadal, I'd have a problem so I tried not to think about it," he said.
The turning point came in the fourth game of deciding set, when Nadal, who also holds the Wimbledon and French Open crowns, needlessly drove a simple smash into the net.
Garcia-Lopez then made his break, chasing after Nadal's poorly struck dropshot and blasting the ball down the line to steal an advantage he never gave up.
"He took his chance and after that, I lost chance after chance," Nadal said.
"He never gave in. I gave up too many chances. It was one of those matches -- I probably have one like that every two years.
"He played very, very well. This is a difficult loss to accept. But when you waste chances like that, winning becomes very unlikely."
In the other semi, Nieminen had both the edge and the fortitude in a close battle with the hard-hitting German and was made to work for his victory.
Nieminen served well and made the break in the second game, coolly handling Becker's repertoire of spin-loaded returns that had him pinned down and darting around the court in a match packed with long rallies.
Becker worked tirelessly to get back into the match but paid the price for too many wayward shots.
"It feels great to be back in the final, it's been a long time and it really feels like a long time," Nieminen said.
"I felt good, I haven't dropped a set and I'm playing really well, I just need to keep executing my game