Leopard Racing's Dennis Foggia prevailed in a tense battle in the Czech Grand Prix to claim his first win in Moto3, while Albert Arenas opened up his championship lead again.
Gresini rider Gabriel Rodrigo muscled his Honda into the lead from second on the grid at the start, though he would be usurped by Arenas from seventh on the grid at Turn 3.
A near-highside for Rodrigo at the Turn 7 left-hander broke the pack up from Arenas, who managed to open up a lead of eight tenths of a second by the end of the lap and threatened to break away.
Aspar's Arenas is carrying some nasty bruising on his left leg following his fast crash from the lead at the Andalusian GP last month and admitted he didn't expect to be able to race at Brno.
His lead was eaten into by the chasing pack by lap three, with poleman Raul Fernandez attempting - but failing to execute - a pass for the lead on his Ajo KTM at Turn 9.
By lap six, Arenas had been relieved of his lead from Foggia, who fended off all attacks on the position through to the final lap.
Honda Team Asia's Ai Ogura launched a raid on Foggia on the last lap into Turn 3, but the Leopard rider scythed back through at Turn 4.
Foggia's hopes were dealt a boost when Arenas carved up Ogura at Turn 12 for the run up the hill to the penultimate corner, giving the Leopard rider enough margin to get through the final turns safely to claim his first win.
It comes after the Italian left Valentino Rossi's VR46 Academy at the end of last year.
Arenas opened up his championship lead back up to 18 points after taking the chequered flag in second, which he admitted in parc ferme came as a result of "learning to suffer" with his injury.
Ogura moves into second in the standings after claiming third, with Niccolo Antonelli just missing out on the rostrum in fourth on the sole-remaining SIC 58 Honda after Tatsuki Suzuki crashed out on lap 10.
John McPhee came from 18th on the grid after a crash in qualifying to finish fifth on the Petronas Sprinta Honda, which keeps him third in the standings, 19 points down on Arenas.
Fernandez was sixth at the chequered flag ahead of Gresini's Jeremy Alcoba, while Tony Arbolino (Snipers Honda) was awarded eighth ahead of Max Racing's Romano Fenati following a photo finish.
Stefano Nepa completed the top 10 on the second Aspar bike.
Moto3 Czech Republic Grand Prix Results - 18 laps
|1||Dennis Foggia||Leopard Racing||39m06.370s|
|2||Albert Arenas||Gaviota Aspar Team Moto3||0.205s|
|3||Ai Ogura||Honda Team Asia||0.251s|
|4||Niccolo Antonelli||SIC58 Squadra Corse||0.381s|
|5||John McPhee||Petronas Sprinta Racing||0.509s|
|6||Raul Fernandez||Red Bull KTM Ajo||0.808s|
|7||Jeremy Alcoba||Kommerling Gresini Moto3||0.889s|
|8||Tony Arbolino||Rivacold Snipers Team||1.647s|
|9||Romano Fenati||Sterilgarda Max Racing Team||1.648s|
|10||Stefano Nepa||Gaviota Aspar Team Moto3||8.815s|
|11||Kaito Toba||Red Bull KTM Ajo||8.828s|
|12||Darryn Binder||CIP - Green Power||8.849s|
|13||Celestino Vietti||SKY Racing Team VR46||8.866s|
|14||Andrea Migno||SKY Racing Team VR46||8.986s|
|15||Deniz Oncu||Red Bull KTM Tech 3||9.089s|
|16||Sergio Garcia||Estrella Galicia 0,0||9.124s|
|17||Ryusei Yamanaka||Estrella Galicia 0,0||9.589s|
|18||Carlos Tatay||Reale Avintia Moto3||9.723s|
|19||Gabriel Rodrigo||Kommerling Gresini Moto3||12.594s|
|20||Ayumu Sasaki||Red Bull KTM Tech 3||12.656s|
|21||Barry Baltus||CarXpert PruestelGP||23.720s|
|22||Khairul Idham Pawi||Petronas Sprinta Racing||23.766s|
|23||Jason Dupasquier||CarXpert PruestelGP||31.955s|
|24||Davide Pizzoli||BOE Skull Rider Facile Energy||36.734s|
|25||Filip Salac||Rivacold Snipers Team||47.046s|
|-||Jaume Masia||Leopard Racing||Retirement|
|-||Yuki Kunii||Honda Team Asia||Retirement|
|-||Tatsuki Suzuki||SIC58 Squadra Corse||Retirement|
|-||Alonso Lopez||Sterilgarda Max Racing Team||Retirement|
|-||Maximilian Kofler||CIP - Green Power||Retirement|
|-||Riccardo Rossi||BOE Skull Rider Facile Energy||Retirement|