Lewis Hamilton won a dramatic rain-hit Russian Grand Prix after Lando Norris was denied his first victory following a thrilling finale.
Norris, 21, appeared on course to keep Hamilton at bay, and become the youngest British Formula One winner.
But the race turned on its head with just eight laps remaining when the rain arrived in Sochi.
Hamilton moved to the wet tyres with four laps left but Norris stayed out on slick rubber after telling his McLaren team he did not want to stop.
However, the decision came back to haunt the young Englishman as the rain increased and he was unable to keep his McLaren on the track.
On lap 51 of 53, Hamilton assumed the lead with Norris having to stop for wets and dropping down the order.
Hamilton claimed the 100th win of his career, ahead of Max Verstappen, who drove from last to second, with Carlos Sainz completing the podium. Norris came home in seventh.
Hamilton moves into the lead of the championship, two points clear of Verstappen with seven races remaining.
Hamilton who embraced Norris afterwards, said: “It has taken a long time to get to 100 and I wasn’t sure whether it would come.
“Lando did such an amazing job, he is doing a great job for McLaren, and it was bittersweet to see my old team ahead.
“But my team made a great call right at the end. I didn’t want to let Lando go and I didn’t know what the weather was going to do. Wow. One hundred.”
He added: “It would have been tough to get past Lando but the rain came and we were opportunistic.
“It is also a dream result for Max.”