Belgium's Dylan Teuns took a fine solo victory on stage eight of the Tour de France as Tadej Pogacar claimed the yellow jersey in Le Grand-Bornand.
Defending champion Pogacar, 22, rode away from his rivals for the overall victory on the penultimate climb of the Tour's first day in the mountains.
Ion Izagirre was second, 44 seconds behind Teuns, with Michael Woods third and Pogacar fourth, 49 seconds back.
Britain's 2018 winner Geraint Thomas, dropped away early on in the stage.
The Ineos Grenadiers rider, who had a dislocated shoulder popped back in after crashing heavily on stage three, was distanced on the opening uncategorised 5km climb of a bruising 151km race that included three category one climbs.
UAE-Team Emirates rider Pogacar attacked out of a reduced peloton with just over 30km remaining in an extraordinary demonstration of his power, punching his chest in celebration as he crossed the finish line.
Pogacar now leads Belgium's Wout van Aert by one minute and 48 seconds in the general classification race.
Stage eight results:
1. Dylan Teuns (Bel/Bahrain-Victorious) 3hrs 54mins 41secs
2. Ion Izagirre (Spa/Astana) +44 secs
3. Michael Woods (Can/Israel Start-Up Nation) +47secs
4. Tadej Pogacar (Slo/UAE-Team Emirates) +49secs
5. Wout Poels (Ned/Bahrain-Victorious) +2mins 33secs
6. Simon Yates (GB/BikeExchange) +2mins 43secs
7. Aurelian Paret-Peintre (Fra/AG2R Citroen) +3mins 03secs
8. Guillaume Martin (Fra/Cofidis) Same time
9. Mattia Catteneo (Ita/Deceuninck-Quick-Step) +4mins 07secs
10. Jonas Vingegaard (Den/Jumbo Visma) +4mins 09secs
General classification after stage eight:
1. Tadej Pogacar (Slo/UAE Team Emirates) 29hrs 38mins 25secs
2. Wout van Aert (Bel/Jumbo-Visma) +1min 48 secs
3. Alexey Lutsenko (Kaz/Astana) +4mins 38secs
4. Rigoberto Uran (Col/EF Education Nippo) +4mins 46secs
5. Jonas Vingegaard (Den/Jumbo Visma) +5mins 00secs
6. Richard Carapaz (Ecu/Ineos Grenadiers) +5mins 01secs
7. Wilco Kelderman (Ned/Bora-Hansgrohe) +5mins 13secs
8. Enric Mas (Spa/Movistar) +5mins 15secs
9. David Gaudu (Fra/Groupama-FDJ) +5mins 52 secs
10. Pello Bilbao (Spa/Bahrain-Victorious) 6mins 41secs.