Spaniard Pello Bilbao won a three-man sprint to take the mountainous fourth stage of the Tour of the Alps on Thursday as Briton Simon Yates kept the race lead going into the final day.
Bahrain's Bilbao edged Russian Aleksandr Vlasov of Astana with Yates, riding for Bike Exchange, third in the 'queen stage' of this year's race from Naturno to Pieve di Bono in northern Italy.
Vlasov and Yates crested the day's last peak seven kilometres from the finish and looked set to duel for victory.
But the 31-year-old Basque rider caught the leaders with a breakneck steep and technical descent and took the lead in the sprint to the finish.
"The feelings are really good, and this Tour of the Alps is giving me the answers I was hoping for," said Yates, who is building towards the Giro which starts in just over two weeks.
Colombian Nairo Quintana finished fourth as the former Giro d'Italia and Vuelta a Espana winner gears up for his Tour de France bid.
Bilbao moved up to second overall nearly a minute behind Yates with Ineos Grenadier's Pavel Sivakov, the defending champion, losing time on the final climb to slip to fifth overall.
"I tried to stay safe on the descent, Bilbao is an excellent descender," said Yates.
"We are now in an excellent position, there is still nothing decided, certainly another busy day awaits us, but I feel happy."
For Bilbao it was the second career success at the Tour of the Alps after victory in Folgaria in 2018.
"I wanted a stage win in this Tour of the Alps," said the Spaniard. "Yesterday, I tried to the last, but it didn’t go well.
"Today, I knew I had an important opportunity and I was able to take advantage of it.
"Tomorrow it will be hard to bring off a major upset, but I certainly want to defend my place on the podium."
The Spaniard dedicated the win to teammate Michele Scarponi on the fourth anniversary of the Italian's death after being struck by a van while on a training ride.
"Michele for me was a teammate and a special person: today it was worth risking a little more to pay him this tribute."
Ireland's Dan Martin of Isreal Start Up Nation dropped from fourth before the stage to 14th overall after crashing twice in the final descent.
Teammate Chris Froome, who has struggled this week, was part of a long breakaway with eight other riders during the 168.6km stage which featured three climbs.
The four-time Tour de France winner's group built up nearly two minutes on the peloton before being caught at the foot of the final 10km Boniprati climb.
Froome is 98th overall, 27 minutes adrift of the leader, ahead of Friday's final stage over 120.9km from Lake Idro to Lake Garda.