Antonio Felix da Costa took the Formula E championship lead by winning the Marrakech E-Prix, as his DS Techeetah team-mate Jean-Eric Vergne scored his first podium of the season.
Reigning series champion Vergne sat out Friday's shakedown and first practice due to illness and started down in 11th on the grid, but climbed to as high as second place in the race, before ultimately coming up just short in an exhilarating battle against Maximilian Guenther.
A rapid start from pole by da Costa contrasted with a somewhat sluggish getaway from second-placed Guenther, but the BMW man saw off Andre Lotterer's challenge into the first corner and set his sights on da Costa.
With Porsche driver Lotterer then slipping behind the Mercedes of Nyck de Vries - only to reclaim third place when the latter was subsequently hit with a drivethrough penalty for excessive power regeneration - da Costa and Guenther established an early two-second cushion over the chasing pack.
The gap between the two leaders themselves oscillated between a few tenths and a second over the opening few laps, but when both moved to activate the first of their two four-minute attack mode periods on lap 11, da Costa made better use of the extra power to put himself two seconds clear of Guenther.
By then, da Costa's team-mate Vergne had muscled his way through from 11th to third, although he soon dropped back behind Lotterer, who had activated his first attack mode later.
Coming into lap 15, with the race approaching its halfway point, da Costa eased off dramatically, allowing Guenther to neutralise the gap and attempt to overtake the DS Techeetah driver around the outside of Turn 11.
Da Costa fought off this attack, but then offered little resistance as Guenther executed a move around the outside of the sweeping Turn 1 left-hander.
With both undertaking significant energy management, da Costa nearly fell into the clutches of Lotterer as he activated his second attack mode but, having retained the position, he then eased past Guenther on the run down to Turn 11.
Guenther then followed suit in activating his final attack mode, but da Costa had established enough of a gap with the use of his allotted extra power to remain ahead once Guenther's four minutes ran out.
At that point, Guenther came under immediate pressure from Vergne - who was last of the frontrunners to activate his second attack mode, having not needed it to re-pass Lotterer for third - and had no answer to the reigning champion when Vergne dived down the inside of Turn 1, in the final seconds of him having extra power.
Yet Guenther now had a usable energy advantage over Vergne and, though the reigning champion threw a very late block on the inside line of Turn 1 in the dying minutes that nearly resulted in a collision, Guenther was unfazed - and was told by BMW that Vergne was fighting "a losing battle".
The prediction ultimately came true as, while Vergne managed to fight off another Guenther attack at Turn 1, this time he was powerless to stop Guenther from overtaking him around the outside with two corners left.
Their battle left da Costa some 11 seconds in the clear, while Vergne just narrowly held on to make it two DS Techeetah cars on the podium, finishing two tenths clear of Nissan's Sebastien Buemi.
Venturi's Edoardo Mortara made it four top-eight finishes in five races with fifth place, but finished just eight tenths clear of a spectacular Mitch Evans.
The erstwhile points leader started last after a Jaguar qualifying miscalculation, but broke into the top 10 by lap 24 and made further progress to grab sixth.
Lucas di Grassi led Audi's efforts in seventh, the highlight of his race coming when he overtook both James Calado (Jaguar) and Jerome d'Ambrosio (Mahindra) in a single Turn 3 move.
From podium contention, Lotterer faded to eighth at the end, with Oliver Rowland (Nissan) and Sam Bird (Virgin Audi) completing the top 10.
BMW's Alexander Sims suffered a last-lap heartbreak, dropping out of a points-paying position with an apparent failure.
Result - 34 laps
|1||Antonio Felix da Costa||DS Techeetah||DS||46m52.757s|
|3||Jean-Eric Vergne||DS Techeetah||DS||12.034s|
|4||Sebastien Buemi||Nissan e.dams||Nissan||12.282s|
|7||Lucas di Grassi||Audi||Audi||18.706s|
|9||Oliver Rowland||Nissan e.dams||Nissan||20.126s|
|11||Nyck de Vries||Mercedes||Mercedes||20.557s|
|23||Ma Qinghua||NIO||NIO||1 Lap|
|-||Alexander Sims||BMW||BMW||Accident damage|
|1||Antonio Felix da Costa||67|
|5||Lucas di Grassi||38|
|13||Nyck de Vries||18|