|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25/09/2019 | | WCTT | | | | 25 | | World Championships (Harrogate) I.T.T. | | 10 | |
| 21/09/2019 | | 1.1 | | | | 1 | | Memorial Marco Pantani | | 80 | |
| 19/09/2019 | | 1.1 | | | | 1 | | Coppa Sabatini - GP Citta di Peccioli | | 80 | |
| 14/09/2019 | | 1.1 | | | | 2 | | Coppa Agostoni - Giro delle Brianze | | 48 | |
| 1/09/2019 | | 2.HC | | | | 4 | | Deutschland Tour | | 84 | |
| 1/09/2019 | | 2.HCs | | | | 4 | | Deutschland Tour, Stage 4 : Eisenach - Erfurt | | 5 | |
| 18/08/2019 | | 2.HC | | | | 1 | | Arctic Race of Norway | | 160 | |
| 18/08/2019 | | 2.HCs | | | | 3 | | Arctic Race of Norway, Stage 4 : Lødingen - Narvik | | 10 | |
| 17/08/2019 | | 2.HCs | | | | 3 | | Arctic Race of Norway, Stage 3 : Sortland - Melbu/Storheia | | 10 | |
| 28/07/2019 | | GT1r | | | | 8 | | Tour de France, Mountains classification | | 3 | |
| 28/07/2019 | | GT1 | | | | 19 | | Tour de France | | 77 | |
| 25/07/2019 | | GT1s | | | | 3 | | Tour de France, Stage 18 : Embrun - Valloire | | 35 | |
| 30/06/2019 | | NC4 | | | | 1 | | National Championships Kazakhstan (Shchuchinsk) R.R. | | 30 | |
| 26/06/2019 | | NCT4 | | | | 1 | | National Championships Kazakhstan (Burabay) I.T.T. | | 15 | |
| 16/06/2019 | | 2.WT1r | | | | 4 | | Critérium du Dauphiné, Points classification | | 10 | |
| 16/06/2019 | | 2.WT1 | | | | 7 | | Critérium du Dauphiné | | 100 | |
| 16/06/2019 | | 2.WT1s | | | | 8 | | Critérium du Dauphiné, Stage 8 : Cluses - Champéry (SUI) | | 1 | |
| 10/06/2019 | | 2.WT1s | | | | 6 | | Critérium du Dauphiné, Stage 2 : Mauriac - Craponne-sur-Arzon | | 3 | |
| 9/06/2019 | | 2.WT1s | | | | 8 | | Critérium du Dauphiné, Stage 1 : Aurillac - Jussac | | 1 | |
| 24/04/2019 | | 1.WT2 | | | | 31 | | Flèche Wallonne | | 5 | |
| 21/04/2019 | | 1.WT2 | | | | 69 | | Amstel Gold Race | | 5 | |
| 19/03/2019 | | 2.WT1r | | | | 1 | | Tirreno - Adriatico, Mountains classification | | 45 | |
| 19/03/2019 | | 2.WT1r | | | | 8 | | Tirreno - Adriatico, Points classification | | 1 | |
| 19/03/2019 | | 2.WT1 | | | | 13 | | Tirreno - Adriatico | | 48 | |
| 16/03/2019 | | 2.WT1s | | | | 1 | | Tirreno - Adriatico, Stage 4 : Foligno - Fossombrone | | 45 | |
| 9/03/2019 | | 1.WT3 | | | | 7 | | Strade Bianche | | 54 | |
| 2/03/2019 | | 1.WT3 | | | | 4 | | Omloop Het Nieuwsblad | | 78 | |
| 21/02/2019 | | 2.HC | | | | 1 | | Tour of Oman | | 160 | |
| 20/02/2019 | | 2.HCs | | | | leader | | Tour of Oman, Stage 5 : Samail - Jabal Al Akhdhar (Green Mountain) | | 8 | |
| 20/02/2019 | | 2.HCs | | | | 1 | | Tour of Oman, Stage 5 : Samail - Jabal Al Akhdhar (Green Mountain) | | 25 | |
| 19/02/2019 | | 2.HCs | | | | leader | | Tour of Oman, Stage 4 : As Sifah - Muscat | | 8 | |
| 18/02/2019 | | 2.HCs | | | | leader | | Tour of Oman, Stage 3 : Shati al Qurum - Quriyat | | 8 | |
| 18/02/2019 | | 2.HCs | | | | 1 | | Tour of Oman, Stage 3 : Shati al Qurum - Quriyat | | 25 | |
| 17/02/2019 | | 2.HCs | | | | 1 | | Tour of Oman, Stage 2 : Al Seeb - Al Bustan | | 25 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 14/10/2018 | | 2.WT3r | | | | 5 | | Presidential Tour of Turkey, Mountains classification | | 4 | |
| 14/10/2018 | | 2.WT3 | | | | 2 | | Presidential Tour of Turkey | | 145 | |
| 13/10/2018 | | 2.WT3s | | | | leader | | Presidential Tour of Turkey, Stage 5 : Selçuk - Manisa | | 9 | |
| 12/10/2018 | | 2.WT3s | | | | leader | | Presidential Tour of Turkey, Stage 4 : Marmaris - Selçuk/Kusadasi | | 9 | |
| 12/10/2018 | | 2.WT3s | | | | 1 | | Presidential Tour of Turkey, Stage 4 : Marmaris - Selçuk/Kusadasi | | 30 | |
| 11/10/2018 | | 2.WT3s | | | | 7 | | Presidential Tour of Turkey, Stage 3 : Fethiye - Marmaris | | 1 | |
| 30/09/2018 | | WCRR | | | | 36 | | World Championships (Innsbruck) R.R. | | 10 | |
| 26/09/2018 | | WCTT | | | | 13 | | World Championships (Innsbruck) I.T.T. | | 35 | |
| 23/09/2018 | | WCTT | | | | 10 | | World Championships (Innsbruck) T.T.T. | | 12 | |
| 19/08/2018 | | 1.WT2 | | | | 101 | | EuroEyes Cyclassics - Hamburg | | 5 | |
| 10/08/2018 | | 2.WT2r | | | | 4 | | Tour de Pologne, Mountains classification | | 8 | |
| 10/08/2018 | | 2.WT2 | | | | 20 | | Tour de Pologne | | 18 | |
| 14/07/2018 | | 2.1s | | | | 2 | | Österreich-Rundfahrt / Tour of Austria, Stage 8 : Scheibbs - Wels | | 10 | |
| 12/07/2018 | | 2.1s | | | | 1 | | Österreich-Rundfahrt / Tour of Austria, Stage 6 : Knittelfeld - Wenigzell | | 20 | |
| 1/07/2018 | | NC3 | | | | 1 | | National Championships Kazakhstan (Almaty) R.R. | | 60 | |
| 27/06/2018 | | NCT3 | | | | 5 | | National Championships Kazakhstan (Almaty) I.T.T. | | 10 | |
| 27/05/2018 | | GT2 | | | | 87 | | Giro d'Italia | | 15 | |
| 25/03/2018 | | 1.WT2 | | | | 46 | | Gent - Wevelgem | | 5 | |
| 23/03/2018 | | 1.WT2 | | | | 95 | | E3 Harelbeke | | 5 | |
| 17/03/2018 | | 1.WT1 | | | | 107 | | Milano - Sanremo | | 5 | |
| 13/03/2018 | | 2.WT1 | | | | 15 | | Tirreno - Adriatico | | 38 | |
| 3/03/2018 | | 1.WT3 | | | | 26 | | Strade Bianche | | 5 | |
| 24/02/2018 | | 1.WT3 | | | | 42 | | Omloop Het Nieuwsblad | | 5 | |
| 18/02/2018 | | 2.HC | | | | 1 | | Tour of Oman | | 160 | |
| 17/02/2018 | | 2.HCs | | | | leader | | Tour of Oman, Stage 5 : Samail - Jabal Al Akhdhar (Green Mountain) | | 8 | |
| 17/02/2018 | | 2.HCs | | | | 2 | | Tour of Oman, Stage 5 : Samail - Jabal Al Akhdhar (Green Mountain) | | 15 | |
| 15/02/2018 | | 2.HCs | | | | 3 | | Tour of Oman, Stage 3 : Halban - Wadi Dayqah Dam | | 10 | |
| 14/02/2018 | | 2.HCs | | | | 3 | | Tour of Oman, Stage 2 : Al Seeb - Al Bustan | | 10 | |