Geraint Thomas edged closer to winning the Tour de France by finishing second to Primoz Roglic on stage 19, the final day in the mountains.
The Briton outsprinted closest rival Tom Dumoulin on the run-in to Laruns to pick up six bonus seconds and extend his overall lead with two stages left.
Thomas leads Dutchman Dumoulin by two minutes, five seconds with Saturday’s 31km individual time trial to come.
Sunday’s processional finale into Paris will see no change in the standings.
Tradition dictates that the yellow jersey is not attacked on the final stage, so if Team Sky’s Thomas leads after the time trial, he will become the third Briton to win the race, after Sir Bradley Wiggins in 2012, and four-time champion Chris Froome – so long as he crosses the finish line in Paris.
Defending champion Froome finished in the group with Thomas but dropped out of third place overall on stage 19, with Slovenian Roglic, who raced clear on the descent to the finish to win by 19 seconds, jumping above him in the standings.
An unassailable lead?
A hilly 31km time trial separates Thomas from the Tour title and while he is the British time trial champion – a crown he won last month – he will remain wary of the challenge of reigning world champion Dumoulin, while Roglic is also a renowned time trialler.
Roglic will start the race against the clock two minutes, 24 seconds adrift of Thomas. Froome, who has won four individual time trials in Grand Tour races, and two Olympic bronze medals, is a further 13 seconds back.
The riders will go out in reverse order with Thomas last to start as race leader and he is expected to start his time trial at about 15:30 BST – there will be live coverage on the BBC Sport website from 13:00 and commentary on BBC Radio 5 live.
“I’m certainly in a good position but I’m still trying not to get carried away and think about winning the yellow jersey,” Thomas told BBC Sport.
“As soon as you take your eye off the ball, you can slip up. I’ve got a two-minute advantage but still need to ride well on Saturday. I hope it’s enough.”
In his stage-by-stage guide for the BBC Sport website, Mark Cavendish picked Thomas as his “one to watch”.
Cavendish said: “It’s a mixture of ups and down on technical roads. It’s not going to be someone who can only mash a big gear who is going to win this.
“It’s going to be someone that can make a plan and stick to that. A lot of guys will go off hard and with a little kick in the last 3km are likely to lose a lot of time even though it’s less than a kilometre long.”
Every second counts
Throughout the race Thomas has looked to pick up bonus seconds, awarded mainly on the finish line, and he made sure he profited again today.
He sprinted clear of the six other riders he came into Laruns alongside to earn six bonus seconds for finishing second – he has accrued 33 bonus seconds overall, to Dumoulin’s 12.
Team Sunweb rider Dumoulin was also penalised 20 seconds earlier in the race for drafting behind a team car.
How the stage unfolded
With more than 5,000m of climbing on the final day in the Pyrenees – taking in the Aspin, Tourmalet and Aubisque mountains – there was still lots to race for.
Several riders looking to unsettle Team Sky attacked on the Tourmalet with Ilnur Zakarin the first to show his hand and Mikel Landa, Romain Bardet and Rafal Majka following.
The quartet opened up a lead of more than two minutes on the 17km ascent of the Tourmalet and they caught the day’s breakaway, which featured Britain’s Adam Yates, on the descent.
Thomas was riding a more even tempo behind Team Sky team-mates Jonathan Castroviejo and Michal Kwiatkowski, with Froome and Egan Bernal tucked in.
At one point, Landa moved up to virtual second overall, just 80 seconds adrift of Thomas, but when the break stopped working together and started attacking each other, their advantage tumbled.
Dumoulin twice tried attacking out of the yellow jersey group but Thomas stuck to his wheel, although he later said: “I don’t think I was as comfortable as I looked – I need to start playing poker.
“I was able to just follow Dumoulin and the main thing for me was to put pressure on him to close to Roglic and that worked really well.
“It was the first time I sensed he was under the cosh a bit so it was good to heap a bit more pressure on him.”
While Thomas responded, Froome dropped 30 seconds back and he needed the help of 21-year-old Colombian Bernal to pace him back.
By the top of the Aubisque – the final mountain ascent of the race – all the main rivals were back together and former junior world ski jump champion Roglic proved the bravest on the 20km run-in to the finish as they raced down the mountain.
Stage 19 result:
1. Primoz Roglic (Slo/Team LottoNL-Jumbo) 5hrs 28mins 17secs
2. Geraint Thomas (GB/Team Sky) +19secs
3. Romain Bardet (Fra/AG2R La Mondiale) same time
4. Daniel Martin (Ire/UAE Team Emirates)
5. Rafal Majka (Pol/Bora-Hansgrohe)
6. Tom Dumoulin (Ned/Team Sunweb)
7. Mikel Landa (Spa/Movistar)
8. Chris Froome (GB/Team Sky)
9. Steven Kruijswijk (Ned/Lotto NL-Jumbo) +31secs
10. Ilnur Zakarin (Rus/Katusha-Alpecin) same time
General classification after stage 19:
1. Geraint Thomas (GB/Team Sky) 79hrs 49mins 31secs
2. Tom Dumoulin (Ned/Team Sunweb) +2mins 05secs
3. Primoz Roglic (Slo/Team LottoNL-Jumbo) +2mins 24secs
4. Chris Froome (GB/Team Sky) +2mins 37secs
5. Steven Kruijswijk (Ned/Lotto NL-Jumbo) +4mins 37secs
6. Mikel Landa (Spa/Movistar) +4mins 40secs
7. Romain Bardet (Fra/AG2R La Mondiale) +5mins 15secs
9. Daniel Martin (Ire/UAE Team Emirates) +6mins 39secs
9. Nairo Quintana (Col/Movistar Team) +10mins 26secs
10. Ilnur Zakarin (Rus/Katusha-Alpecin) +11mins 49secs