Britain’s Simon Yates took the overall lead of Paris-Nice with one stage left after winning Saturday’s summit finish.
The Mitchelton-Scott rider finished stage seven eight seconds ahead of Belgian rider Dylan Teuns (BMC Racing).
The 25-year-old takes an 11-second lead over Spain’s Ion Izagirre into Sunday’s finale – a mountainous 110km race starting and finishing in Nice.
Izagirre’s brother, Gorka, who also rides for Bahrain-Merida, lies third, 12 seconds behind Yates.
Yates finished seventh in the 2017 Tour de France but victory in Nice would be his biggest achievement to date.
The climbing specialist rode away from the field on the 16.3km final ascent to Valdeblore La Colmiane.
Three other British riders have won the week-long event which is also known as the ‘Race to the Sun’ – Tom Simpson in 1967, Sir Bradley Wiggins in 2012 and Geraint Thomas in 2016.
Elswhere, Thomas lost the lead of the Tirreno-Adriatico after suffering a mechanical problem near to the finish of stage four.
The Team Sky rider finished 40 seconds behind former team-mate Mikel Landa as Italy’s Damiano Caruso moved into the lead.
Stage seven result:
1. Simon Yates (GB/Mitchelton) 5hrs 02mins 54secs
2. Dylan Teuns (Bel/BMC Racing) +8secs
3. Ion Izagirre (Spa/Bahrain-Merida) Same time
4. Gorka Izagirre (Spa/Bahrain-Merida) +13secs
5. Tim Wellens (Bel/Lotto-Soudal) Same time
6. Patrick Konrad (Aut/Bora-Hansgrohe) +20secs
7. Sergio Henao (Col/Team Sky) +46secs
8. Marc Soler (Spa/Movistar) Same time
9. Jakob Fuglsang (Den/Astana) +48secs
10. Sam Oomen (Ned/Team Sunweb) +54secs
1. Simon Yates (GB/Mitchelton) 27hrs 29mins 2secs
2. Ion Izagirre (Spa/Bahrain-Merida) +11secs
3. Gorka Izagirre (Spa/Bahrain-Merida) +12secs
4. Tim Wellens (Bel/Lotto-Soudal) +13secs
5. Dylan Teuns (Bel/BMC Racing) +27secs
6. Marc Soler (Spa/Movistar) +37secs
7. Patrick Konrad (Aut/Bora-Hansgrohe) +39secs
8. Sergio Henao (Col/Team Sky) +57secs
9. Julian Alaphilippe (Fra/Quick-Step Floors) +1min 48mins
10. Alexis Vuillermoz (Fra/Ag2r La Mondiale) +1min 49secs