World champion Peter Sagan of the Bora-Hansgrohe team celebrated his 100th victory when he claimed the Grand Prix de Quebec in impressive fashion on Friday.
The Slovak, who also won the race last year, outsprinted Olympic champion Greg van Avermaet (BMC Racing), leaving the Belgian to finish second in Quebec for the third time.
Australian Michael Matthews (Orica-Scott) took third place.
Colombian Rigoberto Uran, who finished second overall in the Tour de France in July, attacked from the main pack with two kilometres left, hoping to repeat his 2015 win.
But the Cannondale-Drapac rider was reined in and Sagan won the final sprint comfortably.
The Grand Prix de Quebec is followed by the Grand Prix de Montreal on Sunday.