Max Verstappen took his second win of the day at Spa in the Formula 3 European Championship in another thrilling race.
While most of the action took place lower down the order, Verstappen had to be wary throughout the race of championship leader Esteban Ocon, who shadowed him and was given a golden opportunity to take the lead by the second mid-race safety car of the day.
Verstappen did not get a great start from second on the grid, enabling Ocon to pass him at La Source and giving surprise poleman Gustavo Menezes a useful gap at the front.
But for the second time today Verstappen's Van Amersfoort Racing car slipstreamed past the Prema Powerteam machine of Ocon on the Kemmel straight, and the duo both passed Menezes when the American went straight on at Les Combes under braking and jumped the speedbumps.
After the safety car there was a four-lap dash to the flag, with Verstappen just managing to fend off Ocon into Les Combes, although he could never break the tow and won by just eight tenths of a second.
Menezes lost third to Felix Serralles on the third lap, but repassed the Puerto Rican three laps later.
Serralles then came under attack from Lucas Auer, who passed him around the outside of Les Combes only to run wide over the kerb and spear back onto the circuit into Serralles, who was launched onto two wheels and slammed into the barriers.
This incident brought out the safety car and promoted Felix Rosenqvist to fourth - the Mucke Motorsport driver stayed close to Menezes for the rest of the race, but could not prevent the Californian from making it two Van Amersfoort drivers on the podium.
Tatiana Calderon put in by far her best-ever performance to calmly rise from 11th on the grid to fifth. The Colombian passed Alexander Toril and John Bryant-Meisner on her way up the order and was never under threat from those behind.
She was helped in her escape by Bryant-Meisner being the cork in the bottle of a massive slipstreaming battle late in the race - as six cars fanned out on the Kemmel straight it came to a predictable end with an incident as Toril punted Bryant-Meisner into a spin.
From 21st on the grid, Jake Dennis had already wriggled past this gaggle but had no answer to the pace of Calderon and settled for sixth.
Nicholas Latifi emerged from the dust-up behind to claim seventh from Tom Blomqvist, Antonio Giovinazzi and Jordan King, the last-named sustaining front-wing damage early in the race.
Of the other retirements, the most notable was Antonio Fuoco, who came to grief on the second lap.
Meanwhile, Santino Ferrucci did not even make the start as a legacy of damage caused by his heavy shunt with Giovinazzi in the opening race.
Results - 15 laps:
Pos Driver Team/Car Time/Gap
1. Max Verstappen Van Amersfoort Dallara-VW 35m48.572s
2. Esteban Ocon Prema Dallara-Merc +0.805s
3. Gustavo Menezes Van Amersfoort Dallara-VW +1.842s
4. Felix Rosenqvist Mucke Dallara-Merc +3.021s
5. Tatiana Calderon Jo Zeller Dallara-Merc +7.992s
6. Jake Dennis Carlin Dallara-VW +9.257s
7. Nicholas Latifi Prema Dallara-Merc +11.609s
8. Tom Blomqvist Carlin Dallara-VW +12.113s
9. Antonio Giovinazzi Carlin Dallara-VW +13.221s
10. Jordan King Carlin Dallara-VW +13.411s
11. Roy Nissany Mucke Dallara-Merc +14.250s
12. Mitchell Gilbert Fortec Dallara-Merc +14.948s
13. Sean Gelael Carlin Dallara-VW +16.418s
14. Dennis van de Laar Prema Dallara-Merc +17.332s
15. Spike Goddard T-Sport Dallara-NBE +17.688s
16. Sandro Zeller Jo Zeller Dallara-Merc +18.400s
17. Hector Hurst West-Tec Dallara-Merc +20.427s
18. John Bryant-Meisner Fortec Dallara-Merc +24.494s
19. Alexander Toril T-Sport Dallara-NBE -2 laps
Felix Serralles West-Tec Dallara-Merc 8 laps
Lucas Auer Mucke Dallara-Merc 8 laps
Felipe Guimaraes Double R Dallara-Merc 2 laps
Antonio Fuoco Prema Dallara-Merc 1 lap
Michele Beretta Eurointernational Dallara-Merc 1 lap
Jules Szymkowiak Van Amersfoort Dallara-VW 1 lap
Santino Ferrucci Eurointernational Dallara-Merc 0 laps