SANT'ANNA DI VINADIO: Vincenzo Nibali all but secured a second Giro d'Italia success with a brave ride to sixth place on Saturday's 20th and penultimate stage.
Starting the day second at 44sec behind leader Esteban Chaves, Italian Nibali put 1min 36sec into the Colombian to snatch the pink jersey.
Sunday's flat, final stage from Cuneo to Torino is little more than a procession.
"I thought maybe everything was lost but also maybe that it still wasn't over," said Nibali, who had come in for severe criticism in the Italian press while struggling earlier in the race.
"The last week can change and I thought something could happen. I'm very headstrong, I never give up. Last year at the Tour (de France) I had bad days but I always try and come back.
"It was a crazy Giro. A difficult, exhausting one for me. I started as the favourite and felt all the pressure. I had a lot of pressure on my shoulders but I've put on this great show, so I'm happy."
Two days ago, Nibali was fourth and 4min 43sec off the lead but the 'Shark' went on the attack in the high mountains in what was always likely to provide the most decisive stages of the race.
He won Friday's 19th stage as then-leader Steven Kruijswijk's hopes disintegrated when he crashed on a fast descent, breaking a rib in the process.
It left Chaves in the pink jersey with a 44sec lead to defend but once Niabli went on the attack with 15km left, he couldn't respond.
"I'm satisfied with my Giro. If someone had told me three years ago I'd be on the Giro podium, I wouldn't have believed it," said the 26-year-old, who was fifth at last year's Vuelta a Espana. "I gave my all but Vincenzo was simply stronger than me."
Even with compatriot Rigoberto Uran helping him despite not riding for the same team, Chaves could not hold onto his lead and finished the day 52sec behind Nibali.
"Esteban gave it everything. Nibali has had a very strong two days. We're still very proud of Esteban - he did all he could and that's all we can ask of him," Chaves's Orica team manager Matt White told Eurosport.
"It's a great experience for him. We were fifth at the Vuelta, now we're second at the Giro behind one of the best Grand Tour riders of recent years. There's no disgrace in that."
Kruijswijk, who battled on despite his broken rib, struggled up the first category Colle della Lombarda alongside Chaves and lost his place on the podium to Spain's Alejandro Valverde.
The Movistar leader finished just 13 seconds behind Nibali and that was enough to take him above Dutchman Kruijswijk into third at 1min 17sec.
Estonia's Rein Taaramae won the 134km 20th stage from Guillestre to Sant'Anna di Vinadio from Colombia's Darwin Atapuma with American Joe Dombrowski third.