Greipel defeats Cavendish for stage win in Carmaux

Voeckler keeps yellow jersey

Andre Greipel (Omega Pharma-Lotto) beat his former teammate and bitter sprint rival Mark Cavendish in Carmaux, but their head to head sprint was only the closing act of a thrilling finale to Carmaux that saw both Thomas Voeckler (Europcar) and Philippe Gilbert (Omega Pharma-Lotto) on the attack.

Gilbert used the short but painful Cote de Mirandol-Bourgnounac to attack the peloton. He got away with Voeckler and others as the green and yellow jersey wearers laid down their panache.

Gilbert was riding for the stage victory and more precious green jersey points. It didn't quite come off but his final last dig cost HTC-Highroad dearly and helped Greipel in the sprint.

Cavendish tried to look after himself after Tony Martin led the peloton the final kilometre, letting Daniele Oss (Liquigas-Cannondale) lead out the sprint, but Cavendish then went a little early. Greipel was on him and had the speed to come past him before the line, celebrating with one arm as Cavendish finished a wheel length behind him. Jose Joaquin Rojas (Movistar) took third, ahead of Thor Hushovd (Garmin-Cervelo) and Romain Feillu (Vacansoleil).

Victory meant Greipel joined the select club of riders who have won stages in all three grand tours. He celebrated with Gilbert, ending all talk of rivalry between the two as Gilbert targets the green jersey.

"It's an incredible feeling to win a stage in the biggest race in the world," Greipel said immediately after his victory.

"When I knew that I could be part of the race this year, winning a stage became my goal and the team supported me in that. I think I'm the happiest person the world at the moment. I've been working for this all season long. Gilbert attacked in last climb and then Marcel Sieberg got me in a good position so that I do my sprint."

Cavendish was gracious in defeat, making no excuses for not being able to hold off the charge of his former teammate. "I went early but it wasn't too early on this type of finish, but I didn't commit enough," Cavendish said. "I kicked with 170 [meters] to go but Greipel came past and beat me. I'm happy for him. He's come here to the Tour de France and won. I feel I made a mistake, but Greipel beat me, so there's no excuse I can say about that."

81 riders finished in the same time as the sprinters, with the overall classification unchanged and Thomas Voeckler still in yellow. Luis Leon Sanchez Gil (Rabobank) is second at 1:49, with Cadel Evans (BMC) third at 2:26, followed by Fränk and Andy Schleck (Leopard Trek) at 2:29 and 2:37 respectively.

Gilbert stayed in the green points jersey despite only finishing 14th in the sprint, while Johnny Hoogerland (Vacansoleil) again fought back the tears on the podium after defending the climber's polka-dot jersey. He rode with 33 stitches in his wounds from the stage nine crash caused by the French television car but finished 111th at 5:59. He has become the symbolic hero of survival in this crash strewn Tour de France.

Fast day in the saddle

With the riders having enjoyed the first rest day of this year's race on Monday, the 158km stage was expected to be fast and furious as the breakaways tried to stop the sprinters strutting their stuff in Carmaux.

Breakaways have often formed as soon as race director Christina Prudhomme drops the start flag but today the 178 riders left in the race rolled along quietly for a few kilometres, perhaps a little scared they would get caught up in the hail and rain storm that hit Aurillac before the riders rolled out.

Fortunately the weather stayed dry and the peloton became lined out on the first little climb. A crash in the peloton after 11km then helped a breakaway of six go clear and set the pattern for the fast stage. Fabian Cancellara (Leopard Trek) and Levi Leipheimer (RadioShack) were caught up in the crash, with the American later stopping briefly to sort out his bike. Robert Gesink (Rabobank) and Juan Antonio Flecha (Team Sky) were also delayed and forced to work together to chase back to the peloton.

By the time the peloton had reformed, Rémy Di Gregorio (Astana), Arthur Vichot (FDJ), Sébastien Minard (Ag2r-La Mondiale), Julien El Fares (Cofidis), Marco Marcato (Vacansoleil) and Anthony Delaplace (Saur-Sojasun) had a 40- second gap. Others tried to jump across but Europcar and even Thomas Voeckler himself, closed them down.

The six where then allowed to open a gap and made it to the intermediate sprint after the descent to Maurs (ironically where Alexandre Kolobnev won a stage in 2007). They picked up most of the big points, but behind the sprinters clashed for the minor points. Mark Cavendish (HTC-Highroad) again showed his green jersey intentions by beating Jose Joaquin Rojas (Movistar) even if the Spaniard was not happy about being trapped against the barriers.

The stage settled after the sprint with Europcar and HTC-highroad helping keep the six in check. The gap touched three minutes as Marcato picked up the climbers points to make sure teammate Johnny Hoogerland kept the jersey but then fell gradually back as more teams helped Europcar and HTC work for a sprint finish.

Race on a knife edge

The final climb did not seem difficult but it was the speed with which Omega Pharma-Lotto hit it that caught the break and had the sprinters in trouble. HTC had started the climb near the front and cleverly slipped down the long peloton but Gilbert stomped on the pedals as if he was riding Liege-Bastogne-Liege and joined up with Tony Gallopin (Cofidis), Voeckler and Dries Devenyns (Quick Step). Tony Martin (HTC-Highroad) also got across the gap as the peloton blew apart behind them over the top of the 3.9km climb.

Martin's presence was a disturbing factor and the peloton never gave up the chase but for several minutes, the Tour de France was on a knife edge, with the yellow and green jerseys in the thick of the action. The five were caught by a Leopard Trek lead chase with five kilometres to go after Gilbert made one last dig. Blel Kadri (Ag2r-La Mondiale) Rob Ruijgh (Vacansoleil) tried another move but they were pulled back on the descent.

Even David Millar (Garmin-Cervelo) did not have the speed to get away on the fast run-in, as HTC-Highroad tried to set up Cavendish. The US-based team was perfect when Cavendish won in Châteauroux but lacked numbers this time after the likes of Mark Renshaw and Bernhard Eisel were dropped after doing so much work on the final climb.

Martin lead the peloton to the final kilometre but Cavendish was isolated and so vulnerable. Greipel saw it and took advantage, coming through late at speed to finally prove he can beat Cavendish in the big sprints in the biggest races.

Full Results

#Rider Name (Country) TeamResult
1André Greipel (Ger) Omega Pharma-Lotto3:31:21 
2Mark Cavendish (GBr) HTC-Highroad  
3Jose Joaquin Rojas Gil (Spa) Movistar Team  
4Thor Hushovd (Nor) Team Garmin-Cervelo  
5Romain Feillu (Fra) Vacansoleil-DCM Pro Cycling Team  
6Daniel Oss (Ita) Liquigas-Cannondale  
7Sébastien Hinault (Fra) AG2R La Mondiale  
8Borut Bozic (Slo) Vacansoleil-DCM Pro Cycling Team  
9Geraint Thomas (GBr) Sky Procycling  
10Samuel Dumoulin (Fra) Cofidis, Le Credit En Ligne  
11William Bonnet (Fra) FDJ  
12Tomas Vaitkus (Ltu) Pro Team Astana  
13Grega Bole (Slo) Lampre - ISD  
14Philippe Gilbert (Bel) Omega Pharma-Lotto  
15Edvald Boasson Hagen (Nor) Sky Procycling  
16Danilo Hondo (Ger) Lampre - ISD  
17Gianni Meersman (Bel) FDJ  
18Alan Perez Lezaun (Spa) Euskaltel-Euskadi  
19Nicolas Roche (Irl) AG2R La Mondiale  
20Kevin De Weert (Bel) Quickstep Cycling Team  
21Jurgen Roelandts (Bel) Omega Pharma-Lotto  
22Jean-Christophe Peraud (Fra) AG2R La Mondiale  
23Christophe Riblon (Fra) AG2R La Mondiale  
24Cadel Evans (Aus) BMC Racing Team  
25Jakob Fuglsang (Den) Leopard Trek  
26Cyril Gautier (Fra) Team Europcar  
27Samuel Sanchez Gonzalez (Spa) Euskaltel-Euskadi  
28Rob Ruijgh (Ned) Vacansoleil-DCM Pro Cycling Team  
29Björn Leukemans (Bel) Vacansoleil-DCM Pro Cycling Team  
30Vladimir Gusev (Rus) Katusha Team  
31Alberto Contador Velasco (Spa) Saxo Bank Sungard  
32Francisco José Ventoso Alberdi (Spa) Movistar Team  
33Damiano Cunego (Ita) Lampre - ISD  
34Tony Martin (Ger) HTC-Highroad  
35Fränk Schleck (Lux) Leopard Trek  
36Thomas Voeckler (Fra) Team Europcar  
37Rein Taaramae (Est) Cofidis, Le Credit En Ligne  
38Andy Schleck (Lux) Leopard Trek  
39Thomas Danielson (USA) Team Garmin-Cervelo  
40Chris Anker Sörensen (Den) Saxo Bank Sungard  
41Maciej Paterski (Pol) Liquigas-Cannondale  
42Luis Leon Sanchez Gil (Spa) Rabobank Cycling Team  
43George Hincapie (USA) BMC Racing Team  
44Grischa Niermann (Ger) Rabobank Cycling Team  
45Christian Vande Velde (USA) Team Garmin-Cervelo  
46Robert Gesink (Ned) Rabobank Cycling Team  
47Yuriy Trofimov (Rus) Katusha Team  
48Egoi Martinez De Esteban (Spa) Euskaltel-Euskadi  
49Peter Velits (Svk) HTC-Highroad  
50Laurens Ten Dam (Ned) Rabobank Cycling Team  
51Arnold Jeannesson (Fra) FDJ  
52Andrey Zeits (Kaz) Pro Team Astana  
53Tony Gallopin (Fra) Cofidis, Le Credit En Ligne  
54Maxime Monfort (Bel) Leopard Trek  
55Linus Gerdemann (Ger) Leopard Trek  
56Jérôme Pineau (Fra) Quickstep Cycling Team  
57Carlos Barredo Llamazales (Spa) Rabobank Cycling Team  
58Jerome Coppel (Fra) Saur - Sojasun  
59Adriano Malori (Ita) Lampre - ISD  
60Paolo Tiralongo (Ita) Pro Team Astana  
61Yannick Talabardon (Fra) Saur - Sojasun  
62Andreas Klöden (Ger) Team RadioShack  
63Vladimir Karpets (Rus) Katusha Team  
64Ivan Basso (Ita) Liquigas-Cannondale  
65Pierre Rolland (Fra) Team Europcar  
66Maxime Bouet (Fra) AG2R La Mondiale  
67Gorka Verdugo Marcotegui (Spa) Euskaltel-Euskadi  
68Sandy Casar (Fra) FDJ  
69Haimar Zubeldia Agirre (Spa) Team RadioShack  
70Levi Leipheimer (USA) Team RadioShack  
71Jens Voigt (Ger) Leopard Trek  
72Rigoberto Uran Uran (Col) Sky Procycling  
73Christian Knees (Ger) Sky Procycling  
74Simon Gerrans (Aus) Sky Procycling  
75Sergio Miguel Moreira Paulinho (Por) Team RadioShack  
76Sylvain Chavanel (Fra) Quickstep Cycling Team  
77David Millar (GBr) Team Garmin-Cervelo  
78Tejay Van Garderen (USA) HTC-Highroad  
79Marcel Sieberg (Ger) Omega Pharma-Lotto  
80Blel Kadri (Fra) AG2R La Mondiale  
81Dries Devenyns (Bel) Quickstep Cycling Team  
82Jelle Vanendert (Bel) Omega Pharma-Lotto0:00:22 
83Xabier Zandio Echaide (Spa) Sky Procycling0:00:30 
84Gorka Izagirre Insausti (Spa) Euskaltel-Euskadi0:02:48 
85Manuel Quinziato (Ita) BMC Racing Team0:03:02 
86Matthew Harley Goss (Aus) HTC-Highroad  
87Fabian Cancellara (Swi) Leopard Trek0:05:33 
88Michael Schär (Swi) BMC Racing Team  
89Mickaël Buffaz (Fra) Cofidis, Le Credit En Ligne  
90Hubert Dupont (Fra) AG2R La Mondiale  
91Brent Bookwalter (USA) BMC Racing Team  
92Alessandro Vanotti (Ita) Liquigas-Cannondale  
93Anthony Charteau (Fra) Team Europcar  
94Nicki Sörensen (Den) Saxo Bank Sungard  
95Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team  
96Richie Porte (Aus) Saxo Bank Sungard  
97Juan Antonio Flecha Giannoni (Spa) Sky Procycling  
98Maxim Iglinskiy (Kaz) Pro Team Astana  
99Stuart O'Grady (Aus) Leopard Trek  
100Rémy Di Gregorio (Fra) Pro Team Astana  
101Sylvester Szmyd (Pol) Liquigas-Cannondale  
102Mark Renshaw (Aus) HTC-Highroad  
103Tristan Valentin (Fra) Cofidis, Le Credit En Ligne  
104Arnaud Coyot (Fra) Saur - Sojasun  
105Amaël Moinard (Fra) BMC Racing Team  
106David Moncoutie (Fra) Cofidis, Le Credit En Ligne  
107Ramunas Navardauskas (Ltu) Team Garmin-Cervelo  
108Pablo Urtasun Perez (Spa) Euskaltel-Euskadi  
109Thomas De Gendt (Bel) Vacansoleil-DCM Pro Cycling Team0:05:59 
110Lieuwe Westra (Ned) Vacansoleil-DCM Pro Cycling Team  
111Johnny Hoogerland (Ned) Vacansoleil-DCM Pro Cycling Team  
112Maarten Tjallingii (Ned) Rabobank Cycling Team  
113Joost Posthuma (Ned) Leopard Trek  
114José Ivan Gutierrez Palacios (Spa) Movistar Team  
115Rui Alberto Faria Da Costa (Por) Movistar Team  
116Sébastien Minard (Fra) AG2R La Mondiale  
117Leonardo Fabio Duque (Col) Cofidis, Le Credit En Ligne  
118Imanol Erviti Ollo (Spa) Movistar Team  
119David Arroyo Duran (Spa) Movistar Team  
120Leonardo Bertagnolli (Ita) Lampre - ISD  
121Vladimir Isaichev (Rus) Katusha Team  
122Ivan Santaromita (Ita) BMC Racing Team  
123Denis Galimzyanov (Rus) Katusha Team  
124David Loosli (Swi) Lampre - ISD  
125Alessandro Petacchi (Ita) Lampre - ISD  
126Matteo Tosatto (Ita) Saxo Bank Sungard  
127Matteo Bono (Ita) Lampre - ISD  
128Romain Zingle (Bel) Cofidis, Le Credit En Ligne  
129Markel Irizar Aranburu (Spa) Team RadioShack  
130Fabio Sabatini (Ita) Liquigas-Cannondale  
131Andriy Grivko (Ukr) Pro Team Astana  
132Steve Morabito (Swi) BMC Racing Team  
133Roman Kreuziger (Cze) Pro Team Astana  
134Paolo Longo Borghini (Ita) Liquigas-Cannondale  
135Maciej Bodnar (Pol) Liquigas-Cannondale  
136Mickaël Delage (Fra) FDJ  
137Tyler Farrar (USA) Team Garmin-Cervelo  
138Arthur Vichot (Fra) FDJ  
139Benjamin Noval Gonzalez (Spa) Saxo Bank Sungard  
140Kristijan Koren (Slo) Liquigas-Cannondale  
141Gert Steegmans (Bel) Quickstep Cycling Team  
142Ryder Hesjedal (Can) Team Garmin-Cervelo  
143Ruben Perez Moreno (Spa) Euskaltel-Euskadi  
144Jérémy Roy (Fra) FDJ  
145Anthony Roux (Fra) FDJ  
146Ben Swift (GBr) Sky Procycling  
147Brian Vandborg (Den) Saxo Bank Sungard  
148Jérémie Galland (Fra) Saur - Sojasun  
149Dmitriy Fofonov (Kaz) Pro Team Astana  
150Egor Silin (Rus) Katusha Team  
151Jonathan Hivert (Fra) Saur - Sojasun  
152Danny Pate (USA) HTC-Highroad  
153Julian Dean (NZl) Team Garmin-Cervelo  
154Sebastian Lang (Ger) Omega Pharma-Lotto  
155Bernhard Eisel (Aut) HTC-Highroad  
156Addy Engels (Ned) Quickstep Cycling Team  
157Niki Terpstra (Ned) Quickstep Cycling Team0:07:00 
158Gerald Ciolek (Ger) Quickstep Cycling Team  
159Perrig Quemeneur (Fra) Team Europcar  
160Anthony Delaplace (Fra) Saur - Sojasun  
161Sébastien Turgot (Fra) Team Europcar  
162Andrey Amador Bakkazakova (CRc) Movistar Team  
163Julien El Fares (Fra) Cofidis, Le Credit En Ligne  
164Lars Boom (Ned) Rabobank Cycling Team  
165Laurent Mangel (Fra) Saur - Sojasun  
166Jesús Hernandez Blazquez (Spa) Saxo Bank Sungard  
167Denys Kostyuk (Ukr) Lampre - ISD  
168Mikhail Ignatyev (Rus) Katusha Team  
169Lars Ytting Bak (Den) HTC-Highroad  
170Bauke Mollema (Ned) Rabobank Cycling Team  
171John Gadret (Fra) AG2R La Mondiale  
172Jimmy Engoulvent (Fra) Saur - Sojasun  
173Fabrice Jeandesboz (Fra) Saur - Sojasun  
174Daniel Navarro Garcia (Spa) Saxo Bank Sungard  
175Dmitriy Muravyev (Kaz) Team RadioShack  
176Yohann Gene (Fra) Team Europcar  
177Vincent Jerome (Fra) Team Europcar  
178Marcus Burghardt (Ger) BMC Racing Team  
DNSAlexandr Kolobnev (Rus) Katusha Team  
DNSYaroslav Popovych (Ukr) Team RadioShack  
Sprint 1 - Maurs, 37.5km
#Rider Name (Country) TeamResult
1Arthur Vichot (Fra) FDJ20 pts
2Anthony Delaplace (Fra) Saur - Sojasun17 
3Sébastien Minard (Fra) AG2R La Mondiale15 
4Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team13 
5Rémy Di Gregorio (Fra) Pro Team Astana11 
6Julien El Fares (Fra) Cofidis, Le Credit En Ligne10 
7Mark Cavendish (GBr) HTC-Highroad9 
8Mark Renshaw (Aus) HTC-Highroad8 
9Jose Joaquin Rojas Gil (Spa) Movistar Team7 
10Francisco José Ventoso Alberdi (Spa) Movistar Team6 
11Philippe Gilbert (Bel) Omega Pharma-Lotto5 
12Mickaël Delage (Fra) FDJ4 
13Tony Gallopin (Fra) Cofidis, Le Credit En Ligne3 
14Matthew Harley Goss (Aus) HTC-Highroad2 
15Rui Alberto Faria Da Costa (Por) Movistar Team1 
Sprint 2 - Carmaux, 158km
#Rider Name (Country) TeamResult
1André Greipel (Ger) Omega Pharma-Lotto45 pts
2Mark Cavendish (GBr) HTC-Highroad35 
3Jose Joaquin Rojas Gil (Spa) Movistar Team30 
4Thor Hushovd (Nor) Team Garmin-Cervelo26 
5Romain Feillu (Fra) Vacansoleil-DCM Pro Cycling Team22 
6Daniel Oss (Ita) Liquigas-Cannondale20 
7Sébastien Hinault (Fra) AG2R La Mondiale18 
8Borut Bozic (Slo) Vacansoleil-DCM Pro Cycling Team16 
9Geraint Thomas (GBr) Sky Procycling14 
10Samuel Dumoulin (Fra) Cofidis, Le Credit En Ligne12 
11William Bonnet (Fra) FDJ10 
12Tomas Vaitkus (Ltu) Pro Team Astana8 
13Grega Bole (Slo) Lampre - ISD6 
14Philippe Gilbert (Bel) Omega Pharma-Lotto4 
15Edvald Boasson Hagen (Nor) Sky Procycling2 
Mountain 1 - Côte de Figeac, 62.5km
#Rider Name (Country) TeamResult
1Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team2 pts
2Anthony Delaplace (Fra) Saur - Sojasun1 
Mountain 2 - Côte de Loupiac, 70.5km
#Rider Name (Country) TeamResult
1Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team1 
Mountain 3 - Côte de Villefranche-de-Rouergue, 99.5km
#Rider Name (Country) TeamResult
1Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team2 pts
2Sébastien Minard (Fra) AG2R La Mondiale1 
Mountain 4 - Côte de Mirandol-Bourgnounac, 143km
#Rider Name (Country) TeamResult
1Thomas Voeckler (Fra) Team Europcar1 
Most combative rider
#Rider Name (Country) TeamResult
1Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team  
Best young rider
#Rider Name (Country) TeamResult
1Daniel Oss (Ita) Liquigas-Cannondale3:31:21 
2Geraint Thomas (GBr) Sky Procycling  
3Edvald Boasson Hagen (Nor) Sky Procycling  
4Cyril Gautier (Fra) Team Europcar  
5Rob Ruijgh (Ned) Vacansoleil-DCM Pro Cycling Team  
6Rein Taaramae (Est) Cofidis, Le Credit En Ligne  
7Maciej Paterski (Pol) Liquigas-Cannondale  
8Robert Gesink (Ned) Rabobank Cycling Team  
9Arnold Jeannesson (Fra) FDJ  
10Andrey Zeits (Kaz) Pro Team Astana  
11Tony Gallopin (Fra) Cofidis, Le Credit En Ligne  
12Jerome Coppel (Fra) Saur - Sojasun  
13Adriano Malori (Ita) Lampre - ISD  
14Pierre Rolland (Fra) Team Europcar  
15Maxime Bouet (Fra) AG2R La Mondiale  
16Rigoberto Uran Uran (Col) Sky Procycling  
17Tejay Van Garderen (USA) HTC-Highroad  
18Blel Kadri (Fra) AG2R La Mondiale  
19Gorka Izagirre Insausti (Spa) Euskaltel-Euskadi0:02:48 
20Matthew Harley Goss (Aus) HTC-Highroad0:03:02 
21Michael Schär (Swi) BMC Racing Team0:05:33 
22Ramunas Navardauskas (Ltu) Team Garmin-Cervelo  
23Thomas De Gendt (Bel) Vacansoleil-DCM Pro Cycling Team0:05:59 
24Rui Alberto Faria Da Costa (Por) Movistar Team  
25Vladimir Isaichev (Rus) Katusha Team  
26Denis Galimzyanov (Rus) Katusha Team  
27Romain Zingle (Bel) Cofidis, Le Credit En Ligne  
28Roman Kreuziger (Cze) Pro Team Astana  
29Arthur Vichot (Fra) FDJ  
30Kristijan Koren (Slo) Liquigas-Cannondale  
31Anthony Roux (Fra) FDJ  
32Ben Swift (GBr) Sky Procycling  
33Egor Silin (Rus) Katusha Team  
34Gerald Ciolek (Ger) Quickstep Cycling Team0:07:00 
35Anthony Delaplace (Fra) Saur - Sojasun  
36Andrey Amador Bakkazakova (CRc) Movistar Team  
37Bauke Mollema (Ned) Rabobank Cycling Team  
#Rider Name (Country) TeamResult
1Omega Pharma - Lotto10:34:03 
3AG2R La Mondiale  
4Lampre - ISD  
6HTC - Highroad  
7Team Garmin - Cervelo  
8Euskaltel - Euskadi  
9Sky Procycling  
10Team Leopard-Trek  
11Cofidis Le Credit En Ligne  
13Pro Team Astana  
14Team Europcar  
15Rabobank Cycling Team  
16Katusha Team  
17Quick Step Cycling Team  
18Team Radioshack  
19Bmc Racing Team0:03:02 
20Saxo Bank Sungard0:05:33 
22Movistar Team0:05:59 
General classification after stage 10
#Rider Name (Country) TeamResult
1Thomas Voeckler (Fra) Team Europcar42:06:32 
2Luis Leon Sanchez Gil (Spa) Rabobank Cycling Team0:01:49 
3Cadel Evans (Aus) BMC Racing Team0:02:26 
4Fränk Schleck (Lux) Leopard Trek0:02:29 
5Andy Schleck (Lux) Leopard Trek0:02:37 
6Tony Martin (Ger) HTC-Highroad0:02:38 
7Peter Velits (Svk) HTC-Highroad  
8Andreas Klöden (Ger) Team RadioShack0:02:43 
9Philippe Gilbert (Bel) Omega Pharma-Lotto0:02:55 
10Jakob Fuglsang (Den) Leopard Trek0:03:08 
11Ivan Basso (Ita) Liquigas-Cannondale0:03:36 
12Damiano Cunego (Ita) Lampre - ISD0:03:37 
13Nicolas Roche (Irl) AG2R La Mondiale0:03:45 
14Kevin De Weert (Bel) Quickstep Cycling Team0:03:47 
15Robert Gesink (Ned) Rabobank Cycling Team0:04:01 
16Alberto Contador Velasco (Spa) Saxo Bank Sungard0:04:07 
17Thomas Danielson (USA) Team Garmin-Cervelo0:04:22 
18Rein Taaramae (Est) Cofidis, Le Credit En Ligne0:04:52 
19Christian Vande Velde (USA) Team Garmin-Cervelo0:04:53 
20Samuel Sanchez Gonzalez (Spa) Euskaltel-Euskadi0:05:01 
21Carlos Barredo Llamazales (Spa) Rabobank Cycling Team0:05:04 
22Vladimir Karpets (Rus) Katusha Team0:05:05 
23Maxime Monfort (Bel) Leopard Trek0:05:07 
24Thor Hushovd (Nor) Team Garmin-Cervelo0:05:13 
25Haimar Zubeldia Agirre (Spa) Team RadioShack0:05:14 
26Arnold Jeannesson (Fra) FDJ0:05:21 
27Jean-Christophe Peraud (Fra) AG2R La Mondiale0:05:32 
28David Millar (GBr) Team Garmin-Cervelo  
29Yuriy Trofimov (Rus) Katusha Team0:05:39 
30Rob Ruijgh (Ned) Vacansoleil-DCM Pro Cycling Team0:05:43 
31Sandy Casar (Fra) FDJ  
32Geraint Thomas (GBr) Sky Procycling0:05:51 
33Björn Leukemans (Bel) Vacansoleil-DCM Pro Cycling Team0:06:26 
34Jerome Coppel (Fra) Saur - Sojasun0:06:35 
35Linus Gerdemann (Ger) Leopard Trek0:06:40 
36Levi Leipheimer (USA) Team RadioShack0:07:16 
37Rigoberto Uran Uran (Col) Sky Procycling0:07:20 
38Edvald Boasson Hagen (Nor) Sky Procycling0:07:45 
39Dries Devenyns (Bel) Quickstep Cycling Team0:08:16 
40Vladimir Gusev (Rus) Katusha Team0:08:45 
41Cyril Gautier (Fra) Team Europcar0:09:12 
42Pierre Rolland (Fra) Team Europcar0:09:20 
43Gorka Verdugo Marcotegui (Spa) Euskaltel-Euskadi0:10:32 
44Maciej Paterski (Pol) Liquigas-Cannondale0:12:10 
45Egoi Martinez De Esteban (Spa) Euskaltel-Euskadi0:13:06 
46Jelle Vanendert (Bel) Omega Pharma-Lotto0:13:37 
47Laurens Ten Dam (Ned) Rabobank Cycling Team0:14:41 
48George Hincapie (USA) BMC Racing Team0:14:53 
49Jérôme Pineau (Fra) Quickstep Cycling Team0:15:14 
50Tejay Van Garderen (USA) HTC-Highroad0:15:16 
51Yannick Talabardon (Fra) Saur - Sojasun0:15:22 
52Ryder Hesjedal (Can) Team Garmin-Cervelo0:15:32 
53Anthony Charteau (Fra) Team Europcar0:15:50 
54David Moncoutie (Fra) Cofidis, Le Credit En Ligne0:17:08 
55Bauke Mollema (Ned) Rabobank Cycling Team0:18:08 
56Adriano Malori (Ita) Lampre - ISD0:20:53 
57Maxime Bouet (Fra) AG2R La Mondiale0:20:59 
58Jose Joaquin Rojas Gil (Spa) Movistar Team0:21:06 
59Hubert Dupont (Fra) AG2R La Mondiale0:21:15 
60Kristijan Koren (Slo) Liquigas-Cannondale0:22:02 
61Julien El Fares (Fra) Cofidis, Le Credit En Ligne0:22:06 
62Rémy Di Gregorio (Fra) Pro Team Astana0:22:20 
63Tony Gallopin (Fra) Cofidis, Le Credit En Ligne0:22:50 
64Egor Silin (Rus) Katusha Team0:24:14 
65Rui Alberto Faria Da Costa (Por) Movistar Team0:24:50 
66John Gadret (Fra) AG2R La Mondiale0:25:09 
67Andrey Zeits (Kaz) Pro Team Astana0:25:13 
68Chris Anker Sörensen (Den) Saxo Bank Sungard0:25:21 
69Christian Knees (Ger) Sky Procycling0:25:25 
70Daniel Oss (Ita) Liquigas-Cannondale0:25:26 
71Simon Gerrans (Aus) Sky Procycling0:25:59 
72Imanol Erviti Ollo (Spa) Movistar Team0:26:25 
73Grischa Niermann (Ger) Rabobank Cycling Team0:26:53 
74Steve Morabito (Swi) BMC Racing Team0:27:16 
75Sébastien Hinault (Fra) AG2R La Mondiale0:27:30 
76José Ivan Gutierrez Palacios (Spa) Movistar Team0:27:41 
77Nicki Sörensen (Den) Saxo Bank Sungard0:28:05 
78Danilo Hondo (Ger) Lampre - ISD0:28:37 
79Christophe Riblon (Fra) AG2R La Mondiale0:28:43 
80Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team0:28:47 
81Jens Voigt (Ger) Leopard Trek0:28:59 
82David Arroyo Duran (Spa) Movistar Team0:30:05 
83Ruben Perez Moreno (Spa) Euskaltel-Euskadi0:30:41 
84Richie Porte (Aus) Saxo Bank Sungard0:30:54 
85Jurgen Roelandts (Bel) Omega Pharma-Lotto0:30:56 
86Johnny Hoogerland (Ned) Vacansoleil-DCM Pro Cycling Team0:31:26 
87Sylvester Szmyd (Pol) Liquigas-Cannondale0:31:48 
88David Loosli (Swi) Lampre - ISD0:32:24 
89Ivan Santaromita (Ita) BMC Racing Team0:32:57 
90Juan Antonio Flecha Giannoni (Spa) Sky Procycling0:33:05 
91Sébastien Turgot (Fra) Team Europcar0:33:08 
92Dmitriy Fofonov (Kaz) Pro Team Astana0:33:20 
93Arthur Vichot (Fra) FDJ0:33:26 
94Amaël Moinard (Fra) BMC Racing Team0:34:17 
95Gorka Izagirre Insausti (Spa) Euskaltel-Euskadi0:34:53 
96Alan Perez Lezaun (Spa) Euskaltel-Euskadi0:35:17 
97Paolo Tiralongo (Ita) Pro Team Astana0:35:18 
98Sergio Miguel Moreira Paulinho (Por) Team RadioShack0:36:48 
99Daniel Navarro Garcia (Spa) Saxo Bank Sungard0:37:31 
100William Bonnet (Fra) FDJ0:37:40 
101Manuel Quinziato (Ita) BMC Racing Team0:38:21 
102Markel Irizar Aranburu (Spa) Team RadioShack0:38:24 
103Xabier Zandio Echaide (Spa) Sky Procycling0:38:26 
104Stuart O'Grady (Aus) Leopard Trek0:39:03 
105Alessandro Vanotti (Ita) Liquigas-Cannondale0:39:52 
106Tristan Valentin (Fra) Cofidis, Le Credit En Ligne0:40:19 
107Sébastien Minard (Fra) AG2R La Mondiale0:42:17 
108Benjamin Noval Gonzalez (Spa) Saxo Bank Sungard0:42:21 
109Matthew Harley Goss (Aus) HTC-Highroad0:42:44 
110Gianni Meersman (Bel) FDJ0:43:44 
111Alessandro Petacchi (Ita) Lampre - ISD0:43:56 
112Sylvain Chavanel (Fra) Quickstep Cycling Team0:44:16 
113Brian Vandborg (Den) Saxo Bank Sungard0:44:33 
114Mark Cavendish (GBr) HTC-Highroad0:45:42 
115Jérémie Galland (Fra) Saur - Sojasun  
116Anthony Roux (Fra) FDJ0:45:57 
117Fabian Cancellara (Swi) Leopard Trek0:46:28 
118Roman Kreuziger (Cze) Pro Team Astana0:46:30 
119Francisco José Ventoso Alberdi (Spa) Movistar Team0:46:46 
120Marcel Sieberg (Ger) Omega Pharma-Lotto0:47:17 
121Sebastian Lang (Ger) Omega Pharma-Lotto0:47:43 
122Ben Swift (GBr) Sky Procycling  
123Romain Feillu (Fra) Vacansoleil-DCM Pro Cycling Team0:48:49 
124Matteo Tosatto (Ita) Saxo Bank Sungard0:48:50 
125Michael Schär (Swi) BMC Racing Team0:48:56 
126Romain Zingle (Bel) Cofidis, Le Credit En Ligne0:49:01 
127Mickaël Delage (Fra) FDJ0:49:29 
128Leonardo Fabio Duque (Col) Cofidis, Le Credit En Ligne0:49:38 
129Lieuwe Westra (Ned) Vacansoleil-DCM Pro Cycling Team0:50:19 
130Borut Bozic (Slo) Vacansoleil-DCM Pro Cycling Team0:50:24 
131Maarten Tjallingii (Ned) Rabobank Cycling Team0:50:41 
132Yohann Gene (Fra) Team Europcar0:50:48 
133Matteo Bono (Ita) Lampre - ISD0:51:15 
134Grega Bole (Slo) Lampre - ISD0:51:24 
135Leonardo Bertagnolli (Ita) Lampre - ISD0:52:23 
136Laurent Mangel (Fra) Saur - Sojasun0:52:33 
137Tomas Vaitkus (Ltu) Pro Team Astana0:52:53 
138Anthony Delaplace (Fra) Saur - Sojasun0:52:55 
139Paolo Longo Borghini (Ita) Liquigas-Cannondale0:53:06 
140Thomas De Gendt (Bel) Vacansoleil-DCM Pro Cycling Team0:53:24 
141Brent Bookwalter (USA) BMC Racing Team0:53:50 
142Joost Posthuma (Ned) Leopard Trek0:54:39 
143Maciej Bodnar (Pol) Liquigas-Cannondale0:55:05 
144Gerald Ciolek (Ger) Quickstep Cycling Team0:55:29 
145Maxim Iglinskiy (Kaz) Pro Team Astana0:55:30 
146Jonathan Hivert (Fra) Saur - Sojasun0:55:55 
147Julian Dean (NZl) Team Garmin-Cervelo0:56:02 
148Denis Galimzyanov (Rus) Katusha Team0:57:37 
149Lars Boom (Ned) Rabobank Cycling Team0:59:32 
150Mikhail Ignatyev (Rus) Katusha Team1:00:19 
151Samuel Dumoulin (Fra) Cofidis, Le Credit En Ligne1:00:23 
152Ramunas Navardauskas (Ltu) Team Garmin-Cervelo1:00:38 
153André Greipel (Ger) Omega Pharma-Lotto1:00:39 
154Andriy Grivko (Ukr) Pro Team Astana1:01:21 
155Tyler Farrar (USA) Team Garmin-Cervelo1:01:32 
156Marcus Burghardt (Ger) BMC Racing Team1:02:02 
157Danny Pate (USA) HTC-Highroad1:02:07 
158Denys Kostyuk (Ukr) Lampre - ISD1:02:15 
159Arnaud Coyot (Fra) Saur - Sojasun1:03:23 
160Pablo Urtasun Perez (Spa) Euskaltel-Euskadi1:03:49 
161Bernhard Eisel (Aut) HTC-Highroad1:04:20 
162Jesús Hernandez Blazquez (Spa) Saxo Bank Sungard1:04:30 
163Blel Kadri (Fra) AG2R La Mondiale1:05:01 
164Jérémy Roy (Fra) FDJ1:05:20 
165Fabrice Jeandesboz (Fra) Saur - Sojasun1:05:55 
166Mark Renshaw (Aus) HTC-Highroad1:06:37 
167Perrig Quemeneur (Fra) Team Europcar1:06:53 
168Niki Terpstra (Ned) Quickstep Cycling Team1:07:40 
169Lars Ytting Bak (Den) HTC-Highroad1:09:27 
170Mickaël Buffaz (Fra) Cofidis, Le Credit En Ligne1:11:53 
171Dmitriy Muravyev (Kaz) Team RadioShack1:12:32 
172Fabio Sabatini (Ita) Liquigas-Cannondale1:14:33 
173Jimmy Engoulvent (Fra) Saur - Sojasun1:16:13 
174Andrey Amador Bakkazakova (CRc) Movistar Team1:16:54 
175Vladimir Isaichev (Rus) Katusha Team1:16:59 
176Addy Engels (Ned) Quickstep Cycling Team1:19:15 
177Gert Steegmans (Bel) Quickstep Cycling Team1:27:27 
178Vincent Jerome (Fra) Team Europcar1:35:50 
Points classification
#Rider Name (Country) TeamResult
1Philippe Gilbert (Bel) Omega Pharma-Lotto226 pts
2Jose Joaquin Rojas Gil (Spa) Movistar Team209 
3Mark Cavendish (GBr) HTC-Highroad197 
4Thor Hushovd (Nor) Team Garmin-Cervelo163 
5Cadel Evans (Aus) BMC Racing Team135 
6André Greipel (Ger) Omega Pharma-Lotto123 
7Romain Feillu (Fra) Vacansoleil-DCM Pro Cycling Team121 
8Sébastien Hinault (Fra) AG2R La Mondiale78 
9Tyler Farrar (USA) Team Garmin-Cervelo76 
10Borut Bozic (Slo) Vacansoleil-DCM Pro Cycling Team69 
11Mickaël Delage (Fra) FDJ58 
12Geraint Thomas (GBr) Sky Procycling58 
13Denis Galimzyanov (Rus) Katusha Team55 
14Edvald Boasson Hagen (Nor) Sky Procycling53 
15Alberto Contador Velasco (Spa) Saxo Bank Sungard51 
16Rui Alberto Faria Da Costa (Por) Movistar Team48 
17William Bonnet (Fra) FDJ48 
18Alessandro Petacchi (Ita) Lampre - ISD47 
19Thomas Voeckler (Fra) Team Europcar46 
20Fränk Schleck (Lux) Leopard Trek46 
21Luis Leon Sanchez Gil (Spa) Rabobank Cycling Team45 
22Sébastien Turgot (Fra) Team Europcar44 
23Andreas Klöden (Ger) Team RadioShack44 
24Matthew Harley Goss (Aus) HTC-Highroad44 
25Sandy Casar (Fra) FDJ42 
26Arthur Vichot (Fra) FDJ40 
27Peter Velits (Svk) HTC-Highroad40 
28Daniel Oss (Ita) Liquigas-Cannondale40 
29Samuel Sanchez Gonzalez (Spa) Euskaltel-Euskadi38 
30Jérémy Roy (Fra) FDJ37 
31José Ivan Gutierrez Palacios (Spa) Movistar Team34 
32Leonardo Fabio Duque (Col) Cofidis, Le Credit En Ligne33 
33Rigoberto Uran Uran (Col) Sky Procycling32 
34Lieuwe Westra (Ned) Vacansoleil-DCM Pro Cycling Team32 
35Johnny Hoogerland (Ned) Vacansoleil-DCM Pro Cycling Team31 
36Anthony Delaplace (Fra) Saur - Sojasun30 
37Tony Gallopin (Fra) Cofidis, Le Credit En Ligne29 
38Tony Martin (Ger) HTC-Highroad28 
39Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team27 
40Francisco José Ventoso Alberdi (Spa) Movistar Team27 
41Damiano Cunego (Ita) Lampre - ISD26 
42Arnold Jeannesson (Fra) FDJ26 
43Julien El Fares (Fra) Cofidis, Le Credit En Ligne26 
44Mark Renshaw (Aus) HTC-Highroad25 
45Jimmy Engoulvent (Fra) Saur - Sojasun24 
46Andy Schleck (Lux) Leopard Trek22 
47Rein Taaramae (Est) Cofidis, Le Credit En Ligne22 
48Gianni Meersman (Bel) FDJ21 
49Christophe Riblon (Fra) AG2R La Mondiale20 
50Anthony Roux (Fra) FDJ20 
51Julian Dean (NZl) Team Garmin-Cervelo18 
52Tristan Valentin (Fra) Cofidis, Le Credit En Ligne17 
53Linus Gerdemann (Ger) Leopard Trek16 
54Gerald Ciolek (Ger) Quickstep Cycling Team16 
55Dries Devenyns (Bel) Quickstep Cycling Team15 
56Yannick Talabardon (Fra) Saur - Sojasun15 
57Sébastien Minard (Fra) AG2R La Mondiale15 
58Blel Kadri (Fra) AG2R La Mondiale15 
59Perrig Quemeneur (Fra) Team Europcar15 
60Niki Terpstra (Ned) Quickstep Cycling Team15 
61Samuel Dumoulin (Fra) Cofidis, Le Credit En Ligne14 
62Ivan Basso (Ita) Liquigas-Cannondale13 
63Tejay Van Garderen (USA) HTC-Highroad13 
64Adriano Malori (Ita) Lampre - ISD13 
65Ruben Perez Moreno (Spa) Euskaltel-Euskadi13 
66Juan Antonio Flecha Giannoni (Spa) Sky Procycling13 
67Gorka Izagirre Insausti (Spa) Euskaltel-Euskadi13 
68Pablo Urtasun Perez (Spa) Euskaltel-Euskadi13 
69Christian Vande Velde (USA) Team Garmin-Cervelo11 
70Maxime Bouet (Fra) AG2R La Mondiale11 
71Rémy Di Gregorio (Fra) Pro Team Astana11 
72Imanol Erviti Ollo (Spa) Movistar Team11 
73Romain Zingle (Bel) Cofidis, Le Credit En Ligne11 
74Jakob Fuglsang (Den) Leopard Trek10 
75Thomas Danielson (USA) Team Garmin-Cervelo10 
76Jelle Vanendert (Bel) Omega Pharma-Lotto10 
77Jérôme Pineau (Fra) Quickstep Cycling Team10 
78Addy Engels (Ned) Quickstep Cycling Team9 
79Cyril Gautier (Fra) Team Europcar8 
80Ryder Hesjedal (Can) Team Garmin-Cervelo8 
81Tomas Vaitkus (Ltu) Pro Team Astana8 
82Maxime Monfort (Bel) Leopard Trek7 
83Xabier Zandio Echaide (Spa) Sky Procycling7 
84Gert Steegmans (Bel) Quickstep Cycling Team7 
85Grega Bole (Slo) Lampre - ISD6 
86Vladimir Isaichev (Rus) Katusha Team6 
87Stuart O'Grady (Aus) Leopard Trek4 
88Maciej Bodnar (Pol) Liquigas-Cannondale3 
89Marcus Burghardt (Ger) BMC Racing Team3 
90Nicolas Roche (Irl) AG2R La Mondiale2 
91Jean-Christophe Peraud (Fra) AG2R La Mondiale2 
92Roman Kreuziger (Cze) Pro Team Astana2 
93Paolo Longo Borghini (Ita) Liquigas-Cannondale2 
94Bernhard Eisel (Aut) HTC-Highroad2 
95Jurgen Roelandts (Bel) Omega Pharma-Lotto1 
96Amaël Moinard (Fra) BMC Racing Team1 
97Alessandro Vanotti (Ita) Liquigas-Cannondale1 
98Fabian Cancellara (Swi) Leopard Trek1 
99Fabio Sabatini (Ita) Liquigas-Cannondale1 
100Andrey Amador Bakkazakova (CRc) Movistar Team-5 
Mountains classification
#Rider Name (Country) TeamResult
1Johnny Hoogerland (Ned) Vacansoleil-DCM Pro Cycling Team22 pts
2Thomas Voeckler (Fra) Team Europcar17 
3Tejay Van Garderen (USA) HTC-Highroad5 
4Marco Marcato (Ita) Vacansoleil-DCM Pro Cycling Team5 
5Rui Alberto Faria Da Costa (Por) Movistar Team5 
6Sandy Casar (Fra) FDJ5 
7Juan Antonio Flecha Giannoni (Spa) Sky Procycling4 
8Anthony Roux (Fra) FDJ3 
9Cadel Evans (Aus) BMC Racing Team2 
10Philippe Gilbert (Bel) Omega Pharma-Lotto2 
11Anthony Delaplace (Fra) Saur - Sojasun2 
12Christophe Riblon (Fra) AG2R La Mondiale2 
13Luis Leon Sanchez Gil (Spa) Rabobank Cycling Team1 
14Julien El Fares (Fra) Cofidis, Le Credit En Ligne1 
15Mickaël Delage (Fra) FDJ1 
16Lieuwe Westra (Ned) Vacansoleil-DCM Pro Cycling Team1 
17Alberto Contador Velasco (Spa) Saxo Bank Sungard1 
18Cyril Gautier (Fra) Team Europcar1 
19Sébastien Minard (Fra) AG2R La Mondiale1 
Best young rider classification
#Rider Name (Country) TeamResult
1Robert Gesink (Ned) Rabobank Cycling Team42:10:33 
2Rein Taaramae (Est) Cofidis, Le Credit En Ligne0:00:51 
3Arnold Jeannesson (Fra) FDJ0:01:20 
4Rob Ruijgh (Ned) Vacansoleil-DCM Pro Cycling Team0:01:42 
5Geraint Thomas (GBr) Sky Procycling0:01:50 
6Jerome Coppel (Fra) Saur - Sojasun0:02:34 
7Rigoberto Uran Uran (Col) Sky Procycling0:03:19 
8Edvald Boasson Hagen (Nor) Sky Procycling0:03:44 
9Cyril Gautier (Fra) Team Europcar0:05:11 
10Pierre Rolland (Fra) Team Europcar0:05:19 
11Maciej Paterski (Pol) Liquigas-Cannondale0:08:09 
12Tejay Van Garderen (USA) HTC-Highroad0:11:15 
13Bauke Mollema (Ned) Rabobank Cycling Team0:14:07 
14Adriano Malori (Ita) Lampre - ISD0:16:52 
15Maxime Bouet (Fra) AG2R La Mondiale0:16:58 
16Kristijan Koren (Slo) Liquigas-Cannondale0:18:01 
17Tony Gallopin (Fra) Cofidis, Le Credit En Ligne0:18:49 
18Egor Silin (Rus) Katusha Team0:20:13 
19Rui Alberto Faria Da Costa (Por) Movistar Team0:20:49 
20Andrey Zeits (Kaz) Pro Team Astana0:21:12 
21Daniel Oss (Ita) Liquigas-Cannondale0:21:25 
22Arthur Vichot (Fra) FDJ0:29:25 
23Gorka Izagirre Insausti (Spa) Euskaltel-Euskadi0:30:52 
24Matthew Harley Goss (Aus) HTC-Highroad0:38:43 
25Anthony Roux (Fra) FDJ0:41:56 
26Roman Kreuziger (Cze) Pro Team Astana0:42:29 
27Ben Swift (GBr) Sky Procycling0:43:42 
28Michael Schär (Swi) BMC Racing Team0:44:55 
29Romain Zingle (Bel) Cofidis, Le Credit En Ligne0:45:00 
30Anthony Delaplace (Fra) Saur - Sojasun0:48:54 
31Thomas De Gendt (Bel) Vacansoleil-DCM Pro Cycling Team0:49:23 
32Gerald Ciolek (Ger) Quickstep Cycling Team0:51:28 
33Denis Galimzyanov (Rus) Katusha Team0:53:36 
34Ramunas Navardauskas (Ltu) Team Garmin-Cervelo0:56:37 
35Blel Kadri (Fra) AG2R La Mondiale1:01:00 
36Andrey Amador Bakkazakova (CRc) Movistar Team1:12:53 
37Vladimir Isaichev (Rus) Katusha Team1:12:58 
Teams classification
#Rider Name (Country) TeamResult
1Team Europcar125:37:34 
2Team Leopard-Trek0:00:32 
3Team Radioshack0:01:02 
4Rabobank Cycling Team0:01:18 
5Team Garmin - Cervelo0:01:50 
6AG2R La Mondiale0:04:23 
7Katusha Team0:04:40 
8HTC - Highroad0:04:55 
9Quick Step Cycling Team0:06:14 
10Omega Pharma - Lotto0:07:45 
11Euskaltel - Euskadi0:09:23 
12Cofidis Le Credit En Ligne0:10:45 
13Pro Team Astana0:10:50 
15Sky Procycling0:11:29 
16Movistar Team0:16:42 
18BMC Racing Team0:18:36 
20Saxo Bank Sungard0:23:46 
21Lampre - ISD0:26:45 

Related Articles

Back to top