Colombian Einar Rubio came through in the final kilometre to overtake Thibault Pinot and Jefferson Cepeda and claim a maiden grand tour win in a shortened stage 13 of the Giro d'Italia on Friday.
The Movistar rider, who was part of an early breakaway, was dropped multiple times on the final climb but dug deep and then found a late burst to snap the tape six seconds in front of Pinot.
Cepeda came in another six seconds behind with the leader's group rolling in 1 min 35 sec behind Rubio.
British rider Geraint Thomas finished ninth to keep the leader's pink jersey for a fifth day, two seconds ahead of Slovenian Primoz Roglic.
"Finally, my big day," said Rubio at the finish.
"I was looking for it and I've worked really hard for this. I really wanted to prepare for this Giro.
"I've struggled in the bad weather but I knew that I didn't have to give up.
"I wanted to keep looking for my own opportunities and thanks to God and everyone who helps me, my dream came true today."
Rubio admitted that he had allowed Pinto and Cepeda to wear each other down as they bickered at the front of the breakaway, apparently ignoring the threat of the Colombian.
"I knew that Pinot was really strong, Cepeda as well," said Rubio.
"So I just had to leave them to play their game. That was the strategy. Maybe it will sink in soon. I came thinking I could win a stage but I managed to achieve it."
The first big mountain stage of this year's race was meant to chew up 207km of road from Borgofranco d'Ivrea to the Swiss ski resort Crans Montana.
But the wretched weather, which has claimed the lives of 14 people in Italy's Emilia Romagna region, saw the stage shortened to 74km, with the Great St. Bernard Pass cut from the route, largely in order to reduce the dangers of the downhill sections.
"It's a good decision if we want to arrive in Rome (on May 28) with at least 50 riders," said Ineos leader Thomas.
Around 40 of the 176 riders who started the race have already dropped out because of Covid and other viruses, including pre-race favourite Remco Evenepoel.
jk/bm/bsp/nr