Marc Marquez rode to victory at the Aragon Grand Prix to extend his lead at the top of the MotoGP standings.
The home favourite was too good on his Repsol Honda, finishing ahead of Movistar Yamaha pair Jorge Lorenzo and Valentino Rossi.
That duo fought out a thrilling race in Marquez's wake, Lorenzo holding off Rossi's challenge and taking second spot.
It would be Marquez's day, though, fighting back into the lead having initially squandered it to Maverick Vinales at Motorland Aragon.
Even then he had to go past Rossi to move clear, taking him on the inside at the 'Aragon Corkscrew' turn and eventually moving ahead.
Behind him, Lorenzo duelled with Vinales before moving on to jostle with Rossi.
Vinales' brave ride earned him a fourth-placed finish with Briton Cal Crutchlow in fifth.
Marquez now holds a 52-point lead over Rossi, 248 to 196, with Lorenzo third overall on 182.