Fernando Gaviria (QuickStep Floors) won stage 12 of the Giro d’Italia to seal a hat-trick of sprint victories at his debut Grand Tour.

Racing in the maglia ciclamino of points classification leader, Gaviria was simply too good for his fellow sprinters at the end of the longest stage of the 2017 race, to add to his victories in Cagliari and Messina.

Gaviria outsprinted Jakub Mareczko (Wilier Triestina-Selle Italia) at the end of the 229km stage, with Irishman Sam Bennett (Bora-hansgrohe) third.

Tom Dumoulin (Team Sunweb) maintained his overall advantage, meanwhile, with a 2’23" lead over Nairo Quintana, as the top ten remained unchanged.

Fernando Gaviria, Giro d'Italia 2017, pic - RCS Sport

Fernando Gaviria, Giro d'Italia 2017, pic - RCS Sport

Sergey Firsanov (Gazprom-RusVelo), Marco Marcato (UAE Team Emirates) and Mirco Maestri (Bardiani-CSF) formed the day’s break, and with such a long stage in store the peloton were happy to let them go.

The gap was just shy of seven minutes as they approached the Colle di Casaglia climb, though there was a flurry of action in the bunch as stage 11 winner Omar Fraile beat recumbent King of the Mountains Jan Polanc to claim the classification lead.

At the intermediate sprint, meanwhile, Gaviria was unchallenged from the bunch as he extended his lead in the maglia ciclamino.

In the peloton, it was the sprint teams doing the bulk of the chasing, leaving Dumoulin and Team Sunweb with a much easier job than the previous day.

And the work of the sprint teams brought the gap right down – Firsanov and Marcato sitting up with 11km remaining, and Maestri lasting on the run-in to his hometown until he too was caught with 6km to go.

Bora-hansgrohe lined out on the front for Sam Bennett, but Lotto-Soudal, QuickStep Floors and Orica-Scott all joined the mix as the bunch sprint approached.

Albanian champion Eugert Zhupa (Wilier Triestina-Selle Italia) put a big dig in, but stage one winner Lukas Postlberger (Bora-hansgrohe) shut him down.

Fernando Gaviria, podium, QuickStep Floors, 2017, Giro d'Italia, pic - RCS Sport

Fernando Gaviria, podium, QuickStep Floors, 2017, Giro d'Italia, pic - RCS Sport

It teed up the sprint finish, and Max Richeze dropped Gaviria off at the front – and from there, there was never going to be another winner.

Such was the lead-out, the Argentine finished fifth himself, raising his arms with his Colombian team-mate.

Gaviria will now have the chance to make it four stage wins on stage 13, a pan-flat route and probably the final chance for the fast men at this year’s race.

Giro d’Italia 2017: stage 12 – report

1) Fernando Gaviria (COL) – QuickStep Floors – 5.18.55hrs

2) Jakub Mareczko (ITA) – Wilier Triestina-Selle Italia – ST

3) Sam Bennett (IRL) – Bora-hansgrohe

4) Phil Bauhaus (GER) – Team Sunweb

5) Max Richeze (ARG) – QuickStep Floors

6) Ryan Gibbons (RSA) – Dimension Data

7) Sacha Modolo (ITA) – UAE Team Emirates

8) Andre Greipel (GER) – Lotto-Soudal

9) Jasper Stuyven (BEL) – Trek-Segafredo

10) Roberto Ferrari (ITA) – UAE Team Emirates

General classification

1) Tom Dumoulin (NED) – Team Sunweb – 52.41.08hrs

2) Nairo Quintana (COL) – Movistar +2.23

3) Bauke Mollema (NED) – Trek-Segafredo +2.38

4) Thibaut Pinot (FRA) – FDJ +2.40

5) Vincenzo Nibali (ITA) – Bahrain-Merida +2.47

6) Andrey Amador (CRC) – Movistar +3.05

7) Bob Jungels (LUX) – QuickStep Floors +3.56

8) Tanel Kangert (EST) – Astana +3.59

9) Domenico Pozzovivo (ITA) – Ag2r-La Mondiale +4.05

10) Inur Zakarin (RUS) – Katusha +4.17