Newly crowned MotoGP world champion Marc Marquez won a season record-equalling 12th race, with the 21-year-old Spaniard claiming victory at the Malaysian Grand Prix.
Marquez, who clinched his second successive title in Japan two weeks ago, had a poor start from pole but clawed his way back to the front to finish nearly three seconds ahead of runner-up Valentino Rossi.
Yamaha rider Jorge Lorenzo briefly held the lead early but was reeled in to finish third, while Marquez's Honda team mate Dani Pedrosa was forced to retire after crashing twice in his eight laps.
Marquez's win equalled Australian Mick Doohan's 12 race wins from 1997 and the 21-year-old has the chance to claim the record outright with victory in the final race at Valencia.
The win also sealed the constructor's title for Honda, their 21st in premier class racing.
Marquez will head to Valencia on 337 points, carrying a 62-point lead over Yamaha's Italian great Rossi. Lorenzo remains third in the championship on 263 points ahead of Pedrosa.
German Stefan Bradl was fourth on a Honda, with Yamaha's Briton Bradley Smith fifth.
Marquez says he's really happy with the race. "The strongest opponent was the weather, it was really hot."
"I've equalled Mick Doohan's record, with one race left maybe I can beat it!"
Spain's Esteve Rabat wrapped up the Moto2 championship with a round to spare after finishing third behind winner Maverick Vinales.
Rabat has an unassailable 37-point lead in the championship over second-placed Finn Mika Kallio, who finished runner-up at Sepang.
The Moto3 title will go down to the final race at Valencia after Alex Marquez, the younger brother of Marc, saw his championship lead trimmed to 11 points.
Marquez could have sealed the title with a win at Sepang but could only manage fifth place.
Australia's Jack Miller, 20 points behind Marquez at the start of the day, finished second behind race winner Efren Vazquez, to close the gap to 11 points.