Valentino Rossi defeated Marc Marquez in a final-lap thriller to win the Dutch TT at Assen and stretch his MotoGP championship lead.
The duo were a class apart throughout an incredible grand prix, leaving the rest of the field - headed by Rossi's Yamaha team-mate and title rival Jorge Lorenzo - behind.
Rossi led the majority of the race but could never escape from Marquez's Honda.
Marquez calmly stalked his rival until slipping ahead into the first corner with seven laps to go.
Although Marquez was using a harder tyre than the Italian, Rossi still had plenty of grip left for the final shootout and clung to Marquez's tail even after being passed.
He squeezed back into the lead with two laps left, and resisted Marquez's immediate attempt to repass at the next corner.
Rossi then stretched a 0.6-second advantage - his biggest of the ultra-close race - only for Marquez to come back at him with a storming final lap.
Into the chicane for the last time, Marquez flung his Honda to the inside of the Yamaha.
They made light contact, with Rossi shooting across the gravel on the inside of the corner - with his front wheel briefly in the air - and accelerating back on track still ahead.
With Marquez losing a little momentum, Rossi crossed the line 1.2s clear to secure his third win of 2015 and his first since the Termas de Rio Hondo race in April.
Lorenzo swiftly wiped out the disadvantage of his poor qualifying performance and came through from eighth to third, but could not keep pace with Rossi and Marquez, ending his winning streak at four victories.
He finished nearly 15s off the lead and is now 10 points behind Rossi in the championship again.
Andrea Iannone was fourth for Ducati, escaping from a huge battle for the rest of the top 10 places.
Pol Espargaro eventually won that, just ahead of Cal Crutchlow, Bradley Smith and Dani Pedrosa, who was riding with a sore hand after his warm-up crash.
Front row starter Aleix Espargaro held his ground off the line this time but fell down the order as the race progressed. The Suzukis completed the top 10, with Espargaro ahead of Maverick Vinales.
Andrea Dovizioso spent a while in fifth before being shuffled back to 12th behind Danilo Petrucci.
Scott Redding's tough weekend finished with a quiet 13th.
The worst of several midfield crashes occurred on lap one, when Jack Miller and Hector Barbera tangled at the chicane. While Miller walked away, Barbera was taken from the scene on a stretcher, but conscious and sitting up.