Caleb Ewan earned his second stage win at the 2019 Giro d'Italia as he pipped points classification rivals Arnaud Demare and Pascal Ackermann in Novi Ligure.
Ackermann wore the maglia ciclamino on Wednesday despite crashing in stage 10, but he held just a single point lead over Demare - a winner the previous day - while Ewan was in third.
And all three men were involved late in the action on a day that suited the sprinters, with each rider making a bid for a precious victory.
It looked as though Demare, with support from Groupama-FDJ, and Ackermann, backed by BORA - hansgrohe, would battle to the line until Ewan snatched his triumph.
BORA sent Ackermann clear late on and Demare sought a response, but Ewan got to the wheel first to be well placed for the final 250 metres.
Ackermann moved too early and Ewan emerged from the slipstream to pip Demare, who claimed the points jersey even as the previous leader clung to third place.
Elia Viviani, repeatedly frustrated this year, was left in fourth just behind Ackermann.
The stage 11 drama in the points race was unsurprisingly not matched in the general classification, where no movement saw Valerio Conti retain his lead of one minute and 50 seconds over Primoz Roglic.
EWAN HAILS PERFECT TIMING
Ewan reserved praise for his Lotto Soudal team-mates while acknowledging Ackermann's decision to go early gave him the advantage.
"I think Ackermann has proven he's one of the quickest here and, to be honest, he was the first sprinter who came past me with a good train," Ewan said. "So I decided to jump on him.
"My guys got me into a really good position where I didn't have to fight for the wheels too much. That just made my run a whole lot easier. He went quite early, so I could just sit there and time my sprint to perfection."
All eyes will now be on which sprinters opt to drop out after Wednesday's action as the race increases in difficulty.
1. Caleb Ewan (Lotto Soudal) 5:17:26
2. Arnaud Demare (Groupama-FDJ) + same time
3. Pascal Ackermann (BORA - hansgrohe) "
4. Elia Viviani (Deceuninck-Quick Step) "
5. Davide Cimolai (Israel Cycling Academy) "
1. Valerio Conti (UAE Team Emirates) 45:02:05
2. Primoz Roglic (Jumbo-Visma) + 1:50
3. Nans Peters (AG2R La Mondiale) + 2:21
1. Arnaud Demare (Groupama-FDJ) 194
2. Pascal Ackermann (BORA - hansgrohe) 183
3. Caleb Ewan (Lotto Soudal) 159
King of the Mountains
1. Giulio Ciccone (Trek-Segafredo) 32
2. Primoz Roglic (Jumbo-Visma) 22
3. Fausto Masnada (Androni Giocattoli-Sidermec) 18
After a couple of days that favoured the sprinters, Thursday's 12th stage includes the first category one climb of the race with the Montoso. A shorter 158km ride takes the peloton from Cuneo to Pinerolo.