Britain’s Simon Yates maintained his overall classification lead of 25 seconds at the Vuelta a Espana as Jelle Wallays won the 18th stage on Thursday.
Belgian Wallays held off Sven Erik Bytrom to win the 186.1km stage from Ejea de los Caballeros to Lleida.
Yates had his lead cut by eight seconds by nearest rival Alejandro Valverde on Wednesday, but safely marked the Spaniard on Thursday’s ride.
Only two stages remain before Sunday’s processional finish in Madrid.
Mitchelton-Scott rider Yates, 26, is aiming to become only the second Briton to win the Vuelta after Chris Froome’s success in 2017.
Valverde, meanwhile, is aiming to win the Vuelta for a second time after victory in 2009.
Thursday’s stage saw Loutto Soudal rider Wallays, Bytrom and Jetse Bol form an early breakaway inside three kilometres.
Wallays and Bytrom dropped Bol in the final stages and the pair saw off the fast-finishing Peter Sagan, with the Belgian taking the win from his Norwegian rival.
Friday’s 19th stage sees the riders tackle a 154.5km road race from Lleida to Coll de la Rabassa.
“I had something in my mind to do something in this stage, and I knew if I was good I could surprise many riders,” said Wallays.
“I’ve worked very hard for this and for me it is fantastic.”
Stage 18 results:
1. Jelle Wallays (Bel/ Lotto-Soudal) 3hrs 57mins 03secs
2. Sven Erik Bystrom (Nor/UAE Team Emirates) same time
3. Peter Sagan (Svk/BORA-hansgrohe) st
4. Elia Viviani (Ita/Quick-Step Floors) st
5. Ivan Garcia (Spa/Bahrain-Merida) st
6. Danny van Poppel (Ned/Team LottoNL-Jumbo) st
7. Jon Aberasturi (Spa/Euskadi Basque Country) st
8. Tom Van Asbroeck (Bel/Team EF Education First-Drapac p/b Cannondale) st
9. Giacomo Nizzolo (Ita/Trek-Segafredo) st
10. Ryan Gibbons (SA/Team Dimension Data) st
1. Simon Yates (GB/Mitchelton-Scott) 73hrs 2mins 37secs
2. Alejandro Valverde (Spa/Movistar Team) +25secs
3. Enric Mas (Spa/Quick-Step Floors) +1mins 22secs
4. Miguel Angel Lopez (Col/Astana Pro Team) +1mins 36secs
5. Steven Kruijswijk (Ned/LottoNL-Jumbo) +1mins 48secs
6. Nairo Quintana (Col/Movistar Team) +2mins 11secs
7. Ion Izagirre (Spa/Bahrain-Merida) +4mins 9secs
8. Rigoberto Uran (Col/EF Education First-Drapac p/b Cannondale) +4mins 36secs
9 Thibaut Pinot (Fra/Groupama-FDJ) +5mins 31secs
10. Tony Gallopin (Fra/AG2R La Mondiale) +6mins 5secs