Skip to content
Giro d’Italia

Race Results:

Giro d’Italia

Information

Stage GC Youth Points Mountain TeamUCI

Pos Rider Team UCI Time
1 Vendrame Andrea Decathlon AG2R La Mondiale Team 180 03:51:05
2 Sanchez Pelayo Movistar Team 130 + 54
3 Steinhauser Georg EF Education-EasyPost 95 + 01:07
4 Narvaez Jhonnatan INEOS Grenadiers 80 + 02:27
5 Plapp Lucas Team Jayco-AlUla 60 + 02:27
6 Velasco Simone Astana Qazaqstan Team 45 + 02:30
7 Tratnik Jan Team Visma | Lease a Bike 40 + 02:30
8 Valgren Michael EF Education-EasyPost 35 + 02:30
9 Alaphilippe Julian Soudal Quick-Step 30 + 02:32
10 Hermans Quinten Alpecin-Deceuninck 25 + 03:52
11 Tarozzi Manuele VF Group-Bardiani CSF-Faizanè 20 + 04:15
12 Bais Mattia Team Polti Kometa 15 + 04:30
13 Honore Mikkel EF Education-EasyPost 10 + 08:56
14 De Marchi Alessandro Team Jayco-AlUla 5 + 09:02
15 van Dijke Tim Team Visma | Lease a Bike 2 + 09:37
16 Paleni Enzo Groupama-FDJ + 09:37
17 Stuyven Jasper Lidl-Trek + 10:01
18 De Pooter Dries Intermarché-Wanty + 13:14
19 Großschartner Felix UAE Team Emirates + 15:56
20 Majka Rafal UAE Team Emirates + 15:56
21 Pogacar Tadej UAE Team Emirates + 15:56
22 Ries Michel ARKEA-B&B HOTELS + 15:56
23 Martinez Daniel BORA-hansgrohe + 15:56
24 Aleotti Giovanni BORA-hansgrohe + 15:56
25 Rubio Einer Movistar Team + 15:56
26 Arensman Thymen INEOS Grenadiers + 15:56
27 Covili Luca VF Group-Bardiani CSF-Faizanè + 15:56
28 Geschke Simon Cofidis + 15:56
29 Caruso Damiano Bahrain Victorious + 15:56
30 Tiberi Antonio Bahrain Victorious + 15:56
31 Fortunato Lorenzo Astana Qazaqstan Team + 15:56
32 Thomas Geraint INEOS Grenadiers + 15:56
33 Baudin Alex Decathlon AG2R La Mondiale Team + 15:56
34 O’Connor Ben Decathlon AG2R La Mondiale Team + 15:56
35 Paret-Peintre Valentin Decathlon AG2R La Mondiale Team + 15:56
36 Zana Filippo Team Jayco-AlUla + 15:56
37 Storer Michael Tudor Pro Cycling Team + 15:56
38 Bardet Romain Team dsm-firmenich PostNL + 15:56
39 Piganzoli Davide Team Polti Kometa + 15:56
40 Hirt Jan Soudal Quick-Step + 15:56
41 Paret-Peintre Aurélien Decathlon AG2R La Mondiale Team + 15:56
42 Pozzovivo Domenico VF Group-Bardiani CSF-Faizanè + 15:56
43 Quintana Nairo Movistar Team + 15:56
44 Champion Thomas Cofidis + 16:23
45 Swift Ben INEOS Grenadiers + 16:23
46 Valter Attila Team Visma | Lease a Bike + 16:29
47 Warbasse Lawrence Decathlon AG2R La Mondiale Team + 16:43
48 Hamilton Chris Team dsm-firmenich PostNL + 16:43
49 Mulubrhan Henok Astana Qazaqstan Team + 17:06
50 Zambanini Edoardo Bahrain Victorious + 17:06
51 Janssens Jimmy Alpecin-Deceuninck + 17:56
52 Conci Nicola Alpecin-Deceuninck + 17:56
53 Calmejane Lilian Intermarché-Wanty + 17:56
54 Barthe Cyril Groupama-FDJ + 18:36
55 Sheffield Magnus INEOS Grenadiers + 18:36
56 Vermaerke Kevin Team dsm-firmenich PostNL + 18:36
57 Milesi Lorenzo Movistar Team + 18:36
58 van Sintmaartensdijk Roel Intermarché-Wanty + 18:36
59 Kepplinger Rainer Bahrain Victorious + 18:36
60 Wood Harrison Cofidis + 18:36
61 Barta William Movistar Team + 18:36
62 Smith Dion Intermarché-Wanty + 18:36
63 Swift Connor INEOS Grenadiers + 18:36
64 Gamper Patrick BORA-hansgrohe + 19:27
65 Vansevenant Mauri Soudal Quick-Step + 19:27
66 Torres Albert Movistar Team + 19:27
67 Tronchon Bastien Decathlon AG2R La Mondiale Team + 19:27
68 Bayer Tobias Alpecin-Deceuninck + 19:27
69 Tonelli Alessandro VF Group-Bardiani CSF-Faizanè + 19:27
70 Laengen Vegard Stake UAE Team Emirates + 19:27
71 Chaves Esteban EF Education-EasyPost + 19:27
72 Fernandez Ruben Cofidis + 19:27
73 Walscheid Max Team Jayco-AlUla + 20:49
74 Bais Davide Team Polti Kometa + 20:49
75 Maestri Mirco Team Polti Kometa + 20:49
76 Fabbro Matteo Team Polti Kometa + 20:49
77 Sütterlin Jasha Bahrain Victorious + 20:49
78 Pasqualon Andrea Bahrain Victorious + 20:49
79 de Bod Stefan EF Education-EasyPost + 20:49
80 Koch Jonas BORA-hansgrohe + 20:49
81 Bagioli Andrea Lidl-Trek + 20:49
82 Lopez Juan Pedro Lidl-Trek + 20:49
83 Pellizzari Giulio VF Group-Bardiani CSF-Faizanè + 20:49
84 Cepeda Alexander EF Education-EasyPost + 20:49
85 Theuns Edward Lidl-Trek + 21:13
86 Bjerg Mikkel UAE Team Emirates + 21:29
87 Novak Domen UAE Team Emirates + 21:29
88 Clarke Simon Israel-Premier Tech + 21:33
89 Frigo Marco Israel-Premier Tech + 21:33
90 Leemreize Gijs Team dsm-firmenich PostNL + 21:33
91 Mihkels Madis Intermarché-Wanty + 21:42
92 Pietrobon Andrea Team Polti Kometa + 22:22
93 Ballerini Davide Astana Qazaqstan Team + 22:22
94 Schachmann Max BORA-hansgrohe + 22:40
95 Foss Tobias INEOS Grenadiers + 22:40
96 Stork Florian Tudor Pro Cycling Team + 22:40
97 Touzé Damien Decathlon AG2R La Mondiale Team + 23:05
98 Fiorelli Filippo VF Group-Bardiani CSF-Faizanè + 24:23
99 Molano Sebastian UAE Team Emirates + 25:11
100 Muñoz Francisco Team Polti Kometa + 25:26
101 Debeaumarché Nicolas Cofidis + 25:26
102 Marcellusi Martin VF Group-Bardiani CSF-Faizanè + 25:48
103 Oliveira Rui UAE Team Emirates + 25:48
104 Lamperti Luke Soudal Quick-Step + 25:48
105 Van den Bossche Fabio Alpecin-Deceuninck + 26:04
106 Lonardi Giovanni Team Polti Kometa + 26:17
107 Serry Pieter Soudal Quick-Step + 26:17
108 Ganna Filippo INEOS Grenadiers + 29:44
109 Affini Edoardo Team Visma | Lease a Bike + 29:44
110 Gaviria Fernando Movistar Team + 29:44
111 Germani Lorenzo Groupama-FDJ + 29:44
112 Trentin Matteo Tudor Pro Cycling Team + 29:44
113 Lienhard Fabian Groupama-FDJ + 29:44
114 Froidevaux Robin Tudor Pro Cycling Team + 29:44
115 Pithie Laurence Groupama-FDJ + 29:44
116 Askey Lewis Groupama-FDJ + 29:44
117 Ghebreigzabhier Amanuel Lidl-Trek + 29:44
118 Cimolai Davide Movistar Team + 29:44
119 Hoole Daan Lidl-Trek + 30:44
120 Cerný Josef Soudal Quick-Step + 30:44
121 Milan Jonathan Lidl-Trek + 30:44
122 Consonni Simone Lidl-Trek + 30:44
123 Grondin Donavan ARKEA-B&B HOTELS + 30:44
124 Zanoncello Enrico VF Group-Bardiani CSF-Faizanè + 30:44
125 Colleoni Kevin Intermarché-Wanty + 30:44
126 Dainese Alberto Tudor Pro Cycling Team + 30:44
127 Verre Alessandro ARKEA-B&B HOTELS + 30:44
128 Merlier Tim Soudal Quick-Step + 30:44
129 Mullen Ryan BORA-hansgrohe + 30:44
130 Groves Kaden Alpecin-Deceuninck + 30:44
131 Van Lerberghe Bert Soudal Quick-Step + 30:44
132 Hepburn Michael Team Jayco-AlUla + 30:44
133 Aniolkowski Stanislaw Cofidis + 30:44
134 Kamp Alexander Tudor Pro Cycling Team + 30:44
135 Riou Alan ARKEA-B&B HOTELS + 30:44
136 Lund Andresen Tobias Team dsm-firmenich PostNL + 30:44
137 Ewan Caleb Team Jayco-AlUla + 30:44
138 Costiou Ewen ARKEA-B&B HOTELS + 30:44
139 Le Gac Olivier Groupama-FDJ + 30:44
140 Hofstetter Hugo Israel-Premier Tech + 30:44
141 Kielich Timo Alpecin-Deceuninck + 30:44
142 Planckaert Edward Alpecin-Deceuninck + 30:44
DNS Schultz Nick Israel-Premier Tech
DNF Piccolo Andrea EF Education-EasyPost
Pos Rider Team Time
1 Pogacar Tadej UAE Team Emirates 71:24:03
2 Martinez Daniel BORA-hansgrohe + 07:42
3 Thomas Geraint INEOS Grenadiers + 08:04
4 O’Connor Ben Decathlon AG2R La Mondiale Team + 09:47
5 Tiberi Antonio Bahrain Victorious + 10:29
6 Arensman Thymen INEOS Grenadiers + 11:10
7 Bardet Romain Team dsm-firmenich PostNL + 12:42
8 Rubio Einer Movistar Team + 13:33
9 Zana Filippo Team Jayco-AlUla + 13:52
10 Hirt Jan Soudal Quick-Step + 14:44
11 Fortunato Lorenzo Astana Qazaqstan Team + 16:37
12 Storer Michael Tudor Pro Cycling Team + 18:27
13 Piganzoli Davide Team Polti Kometa + 22:38
14 Geschke Simon Cofidis + 27:55
15 Covili Luca VF Group-Bardiani CSF-Faizanè + 31:56
16 Majka Rafal UAE Team Emirates + 33:44
17 Paret-Peintre Valentin Decathlon AG2R La Mondiale Team + 41:12
18 Quintana Nairo Movistar Team + 44:52
19 Caruso Damiano Bahrain Victorious + 44:55
20 Pozzovivo Domenico VF Group-Bardiani CSF-Faizanè + 46:25
21 Conci Nicola Alpecin-Deceuninck + 49:58
22 Baudin Alex Decathlon AG2R La Mondiale Team + 50:43
23 4 Narvaez Jhonnatan INEOS Grenadiers + 52:27
24 1 Valter Attila Team Visma | Lease a Bike + 54:39
25 1 Aleotti Giovanni BORA-hansgrohe + 57:53
26 1 Paret-Peintre Aurélien Decathlon AG2R La Mondiale Team + 57:54
27 1 Ries Michel ARKEA-B&B HOTELS + 01:00:54
28 Vermaerke Kevin Team dsm-firmenich PostNL + 01:08:40
29 Zambanini Edoardo Bahrain Victorious + 01:13:59
30 Vansevenant Mauri Soudal Quick-Step + 01:19:16
31 3 Steinhauser Georg EF Education-EasyPost + 01:20:25
32 1 Lopez Juan Pedro Lidl-Trek + 01:26:52
33 1 Chaves Esteban EF Education-EasyPost + 01:27:44
34 1 Großschartner Felix UAE Team Emirates + 01:33:10
35 4 Tratnik Jan Team Visma | Lease a Bike + 01:38:50
36 4 Velasco Simone Astana Qazaqstan Team + 01:40:48
37 1 Hamilton Chris Team dsm-firmenich PostNL + 01:41:26
38 3 Calmejane Lilian Intermarché-Wanty + 01:42:15
39 1 Warbasse Lawrence Decathlon AG2R La Mondiale Team + 01:45:52
40 4 Valgren Michael EF Education-EasyPost + 01:46:09
41 4 Alaphilippe Julian Soudal Quick-Step + 01:46:24
42 5 Schachmann Max BORA-hansgrohe + 01:49:08
43 4 Sanchez Pelayo Movistar Team + 01:55:33
44 2 Tonelli Alessandro VF Group-Bardiani CSF-Faizanè + 01:58:39
45 4 Leemreize Gijs Team dsm-firmenich PostNL + 01:59:57
46 3 Frigo Marco Israel-Premier Tech + 02:03:08
47 8 Vendrame Andrea Decathlon AG2R La Mondiale Team + 02:05:53
48 2 Hermans Quinten Alpecin-Deceuninck + 02:09:04
49 3 Mulubrhan Henok Astana Qazaqstan Team + 02:10:22
50 8 Plapp Lucas Team Jayco-AlUla + 02:12:13
51 2 De Marchi Alessandro Team Jayco-AlUla + 02:14:09
52 4 Barta William Movistar Team + 02:17:59
53 6 Paleni Enzo Groupama-FDJ + 02:20:01
54 3 Swift Ben INEOS Grenadiers + 02:24:00
55 3 Sheffield Magnus INEOS Grenadiers + 02:24:09
56 2 Fernandez Ruben Cofidis + 02:25:25
57 3 Champion Thomas Cofidis + 02:27:25
58 2 Maestri Mirco Team Polti Kometa + 02:28:09
59 4 Bais Mattia Team Polti Kometa + 02:29:50
60 7 Ghebreigzabhier Amanuel Lidl-Trek + 02:35:27
61 Sütterlin Jasha Bahrain Victorious + 02:36:46
62 3 Honore Mikkel EF Education-EasyPost + 02:36:54
63 1 Pellizzari Giulio VF Group-Bardiani CSF-Faizanè + 02:39:18
64 Bagioli Andrea Lidl-Trek + 02:47:54
65 1 Torres Albert Movistar Team + 02:53:37
66 1 Wood Harrison Cofidis + 02:53:50
67 1 Kepplinger Rainer Bahrain Victorious + 02:54:47
68 1 Touzé Damien Decathlon AG2R La Mondiale Team + 03:05:57
69 1 Stork Florian Tudor Pro Cycling Team + 03:07:29
70 1 Ballerini Davide Astana Qazaqstan Team + 03:09:57
71 2 Cepeda Alexander EF Education-EasyPost + 03:10:32
72 2 Novak Domen UAE Team Emirates + 03:11:28
73 1 Serry Pieter Soudal Quick-Step + 03:14:34
74 4 Bais Davide Team Polti Kometa + 03:15:34
75 Fiorelli Filippo VF Group-Bardiani CSF-Faizanè + 03:16:17
76 3 de Bod Stefan EF Education-EasyPost + 03:17:36
77 5 Barthe Cyril Groupama-FDJ + 03:22:24
78 1 Trentin Matteo Tudor Pro Cycling Team + 03:24:05
79 3 Verre Alessandro ARKEA-B&B HOTELS + 03:24:47
80 1 Foss Tobias INEOS Grenadiers + 03:25:17
81 2 Pasqualon Andrea Bahrain Victorious + 03:26:44
82 2 Costiou Ewen ARKEA-B&B HOTELS + 03:29:02
83 3 Laengen Vegard Stake UAE Team Emirates + 03:29:12
84 7 Swift Connor INEOS Grenadiers + 03:33:15
85 5 Gamper Patrick BORA-hansgrohe + 03:33:59
86 6 Smith Dion Intermarché-Wanty + 03:35:06
87 6 Tronchon Bastien Decathlon AG2R La Mondiale Team + 03:36:01
88 11 Stuyven Jasper Lidl-Trek + 03:36:06
89 5 Groves Kaden Alpecin-Deceuninck + 03:37:56
90 5 Germani Lorenzo Groupama-FDJ + 03:38:47
91 3 Askey Lewis Groupama-FDJ + 03:40:44
92 3 Fabbro Matteo Team Polti Kometa + 03:41:18
93 6 Colleoni Kevin Intermarché-Wanty + 03:41:33
94 4 Bayer Tobias Alpecin-Deceuninck + 03:43:26
95 6 Planckaert Edward Alpecin-Deceuninck + 03:44:17
96 7 Janssens Jimmy Alpecin-Deceuninck + 03:44:57
97 Clarke Simon Israel-Premier Tech + 03:45:14
98 4 Marcellusi Martin VF Group-Bardiani CSF-Faizanè + 03:45:21
99 3 Milesi Lorenzo Movistar Team + 03:45:35
100 1 Koch Jonas BORA-hansgrohe + 03:47:04
101 5 Ganna Filippo INEOS Grenadiers + 03:50:58
102 5 De Pooter Dries Intermarché-Wanty + 03:53:37
103 9 Tarozzi Manuele VF Group-Bardiani CSF-Faizanè + 03:55:25
104 Pithie Laurence Groupama-FDJ + 03:57:37
105 6 van Dijke Tim Team Visma | Lease a Bike + 03:59:28
106 1 Van den Bossche Fabio Alpecin-Deceuninck + 04:01:36
107 3 van Sintmaartensdijk Roel Intermarché-Wanty + 04:05:48
108 1 Pietrobon Andrea Team Polti Kometa + 04:08:53
109 3 Kamp Alexander Tudor Pro Cycling Team + 04:10:29
110 2 Kielich Timo Alpecin-Deceuninck + 04:12:46
111 3 Bjerg Mikkel UAE Team Emirates + 04:16:25
112 1 Mihkels Madis Intermarché-Wanty + 04:16:30
113 2 Hepburn Michael Team Jayco-AlUla + 04:26:17
114 4 Debeaumarché Nicolas Cofidis + 04:26:56
115 8 Theuns Edward Lidl-Trek + 04:27:20
116 Hofstetter Hugo Israel-Premier Tech + 04:27:59
117 Dainese Alberto Tudor Pro Cycling Team + 04:30:19
118 4 Lamperti Luke Soudal Quick-Step + 04:31:05
119 Milan Jonathan Lidl-Trek + 04:34:54
120 Grondin Donavan ARKEA-B&B HOTELS + 04:35:37
121 Ewan Caleb Team Jayco-AlUla + 04:36:00
122 4 Oliveira Rui UAE Team Emirates + 04:37:29
123 4 Muñoz Francisco Team Polti Kometa + 04:37:55
124 Consonni Simone Lidl-Trek + 04:40:27
125 Zanoncello Enrico VF Group-Bardiani CSF-Faizanè + 04:40:51
126 3 Molano Sebastian UAE Team Emirates + 04:41:07
127 7 Walscheid Max Team Jayco-AlUla + 04:42:58
128 3 Lonardi Giovanni Team Polti Kometa + 04:45:13
129 1 Affini Edoardo Team Visma | Lease a Bike + 04:46:09
130 2 Aniolkowski Stanislaw Cofidis + 04:46:34
131 1 Mullen Ryan BORA-hansgrohe + 04:49:40
132 1 Hoole Daan Lidl-Trek + 04:52:34
133 2 Le Gac Olivier Groupama-FDJ + 04:53:12
134 3 Cimolai Davide Movistar Team + 04:55:48
135 1 Van Lerberghe Bert Soudal Quick-Step + 04:56:19
136 2 Froidevaux Robin Tudor Pro Cycling Team + 04:57:03
137 2 Gaviria Fernando Movistar Team + 04:58:53
138 3 Lienhard Fabian Groupama-FDJ + 05:02:07
139 1 Merlier Tim Soudal Quick-Step + 05:02:13
140 2 Lund Andresen Tobias Team dsm-firmenich PostNL + 05:05:24
141 2 Cerný Josef Soudal Quick-Step + 05:08:22
142 2 Riou Alan ARKEA-B&B HOTELS + 05:18:27
Pos Rider Team Time
1 Tiberi Antonio Bahrain Victorious 71:34:32
2 Arensman Thymen INEOS Grenadiers + 41
3 Zana Filippo Team Jayco-AlUla + 03:23
4 Piganzoli Davide Team Polti Kometa + 12:09
5 Paret-Peintre Valentin Decathlon AG2R La Mondiale Team + 30:43
6 Baudin Alex Decathlon AG2R La Mondiale Team + 40:14
7 Aleotti Giovanni BORA-hansgrohe + 47:24
8 Vermaerke Kevin Team dsm-firmenich PostNL + 58:11
9 Zambanini Edoardo Bahrain Victorious + 01:03:30
10 Vansevenant Mauri Soudal Quick-Step + 01:08:47
11 Steinhauser Georg EF Education-EasyPost + 01:09:56
12 3 Sanchez Pelayo Movistar Team + 01:45:04
13 1 Leemreize Gijs Team dsm-firmenich PostNL + 01:49:28
14 1 Frigo Marco Israel-Premier Tech + 01:52:39
15 1 Mulubrhan Henok Astana Qazaqstan Team + 01:59:53
16 1 Plapp Lucas Team Jayco-AlUla + 02:01:44
17 1 Paleni Enzo Groupama-FDJ + 02:09:32
18 2 Sheffield Magnus INEOS Grenadiers + 02:13:40
19 Champion Thomas Cofidis + 02:16:56
20 Pellizzari Giulio VF Group-Bardiani CSF-Faizanè + 02:28:49
21 Bagioli Andrea Lidl-Trek + 02:37:25
22 Wood Harrison Cofidis + 02:43:21
23 Verre Alessandro ARKEA-B&B HOTELS + 03:14:18
24 Costiou Ewen ARKEA-B&B HOTELS + 03:18:33
25 3 Tronchon Bastien Decathlon AG2R La Mondiale Team + 03:25:32
26 1 Germani Lorenzo Groupama-FDJ + 03:28:18
27 Askey Lewis Groupama-FDJ + 03:30:15
28 2 Colleoni Kevin Intermarché-Wanty + 03:31:04
29 1 Bayer Tobias Alpecin-Deceuninck + 03:32:57
30 1 Marcellusi Martin VF Group-Bardiani CSF-Faizanè + 03:34:52
31 1 Milesi Lorenzo Movistar Team + 03:35:06
32 3 De Pooter Dries Intermarché-Wanty + 03:43:08
33 Pithie Laurence Groupama-FDJ + 03:47:08
34 5 van Dijke Tim Team Visma | Lease a Bike + 03:48:59
35 1 Van den Bossche Fabio Alpecin-Deceuninck + 03:51:07
36 2 van Sintmaartensdijk Roel Intermarché-Wanty + 03:55:19
37 Pietrobon Andrea Team Polti Kometa + 03:58:24
38 2 Kielich Timo Alpecin-Deceuninck + 04:02:17
39 1 Mihkels Madis Intermarché-Wanty + 04:06:01
40 3 Lamperti Luke Soudal Quick-Step + 04:20:36
41 Milan Jonathan Lidl-Trek + 04:24:25
42 Grondin Donavan ARKEA-B&B HOTELS + 04:25:08
43 1 Muñoz Francisco Team Polti Kometa + 04:27:26
44 1 Hoole Daan Lidl-Trek + 04:42:05
45 1 Lund Andresen Tobias Team dsm-firmenich PostNL + 04:54:55
Pos Team Time
1 Decathlon AG2R La Mondiale Team 214:45:20
2 INEOS Grenadiers + 19:13
3 UAE Team Emirates + 50:07
4 Bahrain Victorious + 01:17:34
5 1 Astana Qazaqstan Team + 01:20:47
6 1 Movistar Team + 01:34:30
7 2 Team dsm-firmenich PostNL + 01:35:45
8 1 VF Group-Bardiani CSF-Faizanè + 02:00:07
9 1 BORA-hansgrohe + 02:02:08
10 Soudal Quick-Step + 02:08:10
11 EF Education-EasyPost + 02:12:47
12 1 Team Jayco-AlUla + 03:10:59
13 1 Team Visma | Lease a Bike + 03:27:38
14 2 Cofidis + 03:30:52
15 Team Polti Kometa + 04:03:10
16 Alpecin-Deceuninck + 04:27:52
17 1 Lidl-Trek + 04:48:23
18 1 Tudor Pro Cycling Team + 05:04:41
19 1 Israel-Premier Tech + 06:39:11
20 1 ARKEA-B&B HOTELS + 06:40:53
21 Intermarché-Wanty + 07:07:06
22 Groupama-FDJ + 07:26:10

,

Back To Top