Mark Cavendish sprinted to his second victory of this year's Tour of Britain on stage seven as Sir Bradley Wiggins retained his overall lead by finishing safely in the peloton.
Cavendish launched an early bid for the line on a gently uphill finish in Guildford and hung on to win by half a bike's length from second-placed Elia Viviani and third-placed Gerald Ciolek.
The 28-year-old Briton had been delivered to the cobbled finishing straight in perfect position by his Omega Pharma - Quick-Step team-mates and has now won nine stages of his home stage race.
He was very nearly caught by Viviani (Cannondale) at the death after appearing to tire following his early launch 400m out, but just as the Italian pulled alongside, Cavendish kicked again and this time Viviani had no response.
'Lucky to hold on'
Cavendish said afterwards: "I mistimed it a little bit. I was maybe over-compensating. I saw Elia come, so I moved him across because the roughest part of the road is in the edges, and as he came I had to go again. I am so lucky to hold on.
"I am lucky I can do that second kick but it really takes so much out of me, so hopefully I can recover for tomorrow."
Wiggins (Team Sky) retained his overall lead but saw his advantage over second-placed Martin Elmiger (IAM Cycling) reduced from 32 seconds to 26 seconds after a late split in the peloton.
He now only needs to avoid incident in Sunday's short final stage in central London, which is set to end in a sprint, to complete a maiden Tour of Britain triumph.
Quick-Step boss sprint
Stage seven took the riders on a 155km route from Epsom to Guildford and although a four-man breakaway opened up a gap of more than three and a half minutes, they were kept on a tight leash by Omega Pharma - Quick-Step and Cannondale and were eventually swallowed up just under 6km from the finish.
Omega Pharma - Quick-Step continued to dominate the run-in and when Cavendish turned the final corner on the wheel of team-mate Alessandro Petacchi, it appeared no one could challenge him for victory.
Viviani proved otherwise, but in front of ten-deep crowds in Guildford, the home favourite would not be denied a second successive victory in the town.
Cavendish added: "I said to Ale, 'Go with 700m to go'. Luke Rowe did the same job for me last year. We actually watched the video from last year. The guys did a brilliant job and I am so happy."
Angel Madrazo (Movistar) has been confirmed as the winner of the mountains classification and also leads the points classification going into the final stage.
Stage seven result
1 Mark Cavendish (GB) Omega Pharma - Quick-Step, 3:46:57 2 Elia Viviani (Ita) Cannondale, same time
3 Gerald Ciolek (Ger) MTN-Qhubeka, st
4 Blaz Jarc (Slo) NetApp-Endura, st
5 Jacob Rathe (USA) Garmin-Sharp, st
6 Matteo Pelucci (Ita) IAM Cycling, st
7 Chris Opie (GB) UK Youth, st
8 Martin Elmiger (Sui) IAM Cycling, st
9 Alessandro Bazzana (Ita) UnitedHealthcare, st
10 Sam Bennett (Irl) AN Post - Chainreaction, st
1 Bradley Wiggins (GB) Team Sky
2 Martin Elmiger (Swi) IAM Cycling, +26secs
3 Simon Yates (GB) Great Britain, +1:06
4 David Lopez (Spa) Team Sky, +1:08
5 Sergio Pardilla (Spa) MTN-Qhubeka, +1:16
6 Jack Bauer (NZ) Garmin-Sharp, +1:19
7 Ian Stannard (GB) Team Sky, +1:34
8 Michal Golas (Pol) Omega Pharma - Quick-Step, +1:36
9 Sebastien Reichenbach (Swi) IAM Cycling, +1:42
10 Nairo Quintana (Col) Movistar, +1:56
- Blue and white jersey (points classification): Martin Elmiger (Swe) IAM Cycling
- Green polka dot jersey (mountains classification): Angel Madrazo (Movistar)
- Green and red jersey (intermediate sprints competition): Angel Madrazo (Movistar)