Maxim Belkov of Russia won the ninth stage of the Giro d'Italia on Sunday with a superb solo performance, and Vincenzo Nibali retained the overall lead.
Belkov, who rides for Katusha, won in a time of 4 hours, 31 minutes, 31 seconds, beating Carlos Betancur by 44 seconds following a long solo escape on the wet and hilly 170-kilometre ride from San Sepolcro to Florence. Jarlinson Pantano was third, 46 seconds behind Belkov.
Belkov attacked 50 kilometres from the finish and maintained his advantage for his first Grand Tour stage victory.
Nibali finished 10th to retain the pink jersey. Defending champion Ryder Hesjedal dropped out of the top 10 and is now more than three minutes behind the Italian.
Nibali's main rival, Bradley Wiggins, dropped nearly a minute behind the peloton during the stage but was helped back by his Sky teammates.
Nibali is nearly half a minute in front of second-place Cadel Evans of Australia. Wiggins remained fourth in the overall standings, 1:16 off the pace.
Belkov was part of an early 12-man breakaway that built a lead of nearly five minutes at the top of the first climb of the day, the category-2 Passo della Consum.
Robinson Chalapud and Stefano Pirazzi broke clear of the group and were swiftly joined by Belkov. The Russian jumped clear of the duo, during heavy rain and fog on the second descent of the day, after the category-1 Vallombrosa climb.
Belkov built a lead of more than three minutes from his chasers and nearly seven minutes on the peloton as the rain began to ease up.
Pantano closed the gap on the next-to-last climb, and the peloton sped up but Belkov still had a minute advantage going into the final kilometre.
Betancur caught Pantano and Tobias Ludvigsson on the approach to the finish and outsprinted his fellow Colombian to second place.
Monday is a rest day, before a 167-kilometre ride on Tuesday in the 10th stage through the mountains from Cordenons to Altopiano del Montasio.
The Giro ends May 26 in Brescia.