Lizzie Deignan secured her first victory since returning from maternity leave as she won stage five to take the overall lead in the Women's Tour.
The 30-year-old out-sprinted Thursday's stage winner Kasia Niewiadoma and Elisa Longo Borghini at the Royal Welsh Showground after the trio broke clear.
Briton Deignan, winner in 2016, leads 2017 champion Niewiadoma by one second going into Saturday's final stage.
The win came 657 days since Deignan's previous professional victory.
Overnight race leader Liane Lippert finished 22nd, losing two minutes and 19 seconds to drop back to 20th in the overall classification.
The German had been in the main pack featuring all of the general classification contenders approaching the final Queen of the Mountains climb of Epynt.
But the positive riding of Trek-Segafredo duo Deignan and Longo Borghini led to the final two riders from the day's breakaway, Erica Magnaldi and Amalie Dideriksen, being reeled in and the chasing pack splintered, with just 20 riders reaching the showground within two minutes of Deignan.
The Yorkshire rider, who finished second on Tuesday and third on Thursday, said: "I can't quite really describe it; it was probably the nicest win I've had in a very long time.
"I really savoured it and really enjoyed it and I will do for a long time."
Saturday's finale will be contested over a 125.9km (79-mile) stage between Carmarthen and Pembrey Country Park.
In a first for the Women's Tour, the field will complete a lap of the Carmarthen Velodrome as part of the stage's ceremonial start and take in part of Pembrey's new, closed-road cycle circuit on the approach to the finish line.
1. Lizzie Deignan (GB/Trek-Segafredo) 3 hours 54 minutes 35 seconds
2. Kasia Niewiadoma (Pol/Canyon-SMAR Racing) Same time
3. Elisa Longo Borghini (Ita/Trek-Segafredo) +2secs
4. Leah Kirchmann (Can/Team Sunweb) +17secs
5. Christine Majerus (Lux/Boels Dolman) Same time
6. Amy Pieters (Ned/Boels Dolman) +19secs
7. Ellen Van Dijk (Ned/Trek-Segafredo) Same time
8. Lizzy Banks (GB/Bigla)
9. Ane Santesteban Gonzalez (Spa/WNT-Rotor Pro Cycling)
10. Marta Cavalli (Ita/Valcar Cyclance)
1. Lizzie Deignan (GB/Trek-Segafredo) 17 hours 42 minutes 24 seconds
2. Kasia Niewiadoma (Pol/Canyon-SMAR Racing) +1sec
3. Amy Pieters (Ned/Boels Dolman) +32secs
4. Demi Vollering (Ned/Parkhotel Vollering) +50secs
5. Christine Majerus (Lux/Boels Dolman) Same time
6. Lizzy Banks (GB/Bigla) +57secs
7. Malgorzata Jasinska (Pol/Movistar) +58secs
8. Elisa Longo Borghini (Ita/Trek-Segafredo) +1min
9. Leah Thomas (US/Bigla) Same time
10. Leah Kirchmann (Can/Team Sunweb) +1min 02secs