Italy's Francesco Bagnaia won the Indonesia MotoGP on Sunday with a spectacular ride that took him back to the top of the championship standings after rival Jorge Martin crashed out.
Maverick Vinales (Aprilia) came in a close second behind the 26-year-old Ducati star, with Fabio Quartararo (Yamaha) in third at the Mandalika circuit on the Indonesian resort island of Lombok.
Bagnaia made a mesmerising surge from 13th to the top spot after rising to the podium places within the first four laps, as he refused to let Pramac's Martin punish him further for a poor performance in practice and qualifying.
It was set to be another dream double weekend for Martin after winning Saturday's sprint and taking the lead from the green light, up from sixth, to dominate the early stages of the race.
But it quickly turned into a nightmare for the 25-year-old Spaniard when he crashed on lap 14 of Sunday's main event, a potentially huge moment in the title race.
Vinales put the pressure on Bagnaia in the late stages after being overtaken, coming to within four-tenths of a second of the pack leader.
But the Italian, known for his phenomenal defence, saw out the race to turn the tables on Martin and open up an 18-point gap with just five race weekends left.
"I think we were deserving a race like this," Bagnaia told reporters.
"(I was) doing the maximum I could then when I saw Martin going, I said to myself 'take care of the tyres' and that as the correct thing. I am very, very happy."
The race was marred by a series of crashes in hot and humid conditions, with only 14 riders out of 21 finishing the race.