Tim Merlier pipped Jonathan Milan on the line in a sprint finish to win a crash-marred stage three of the Tour de France.
The Belgian edged the Italian by the slenderest of margins with Germany's Phil Bauhaus in third on a day when Mathieu van der Poel retained the race leader's yellow jersey and stage one winner Jasper Philipsen was forced to abandon.
"It was difficult to be in position in the battle before the last corner and I must say, my team did an incredible job to the last 5km and then the real battle started," said Merlier.
"I was able to get some slipstream next to Milan. It's always difficult to beat him but I'm happy I can take today my second win in the Tour de France.
"At first I was sure [I had won] and put my hands in the air but then I was not sure anymore so I was waiting until I was."
Belgian Philipsen, who would almost certainly have contested the race to the finish line, fell heavily around 60km from the end of the 178.3km route from Valenciennes to Dunkirk when Frenchman Bryan Coquard unintentionally diverted into his path.
There were three more crashes including two in the final 5km of the stage with Olympic champion Remco Evenepoel and Geraint Thomas seemingly involved.
The two main general classification favourites, Tadej Pogacar and Jonas Vingegaard, finished safely in the main pack and remain in second and third place overall behind Van der Poel.
Meanwhile, the 11 bikes stolen from the Cofidis team truck on Sunday morning were all found before the stage concluded.
Five of them had been abandoned in a forest with the others being located by the police later on Monday.
Tuesday's fourth stage is a rolling 174.2km run from Amiens Metropole to Rouen, with five categorised climbs in a demanding finale.