Ryan Gibbons won the first stage of the virtual Tour de France, beating the likes of Mathieu van der Poel and Greg Van Avermaet in the sprint finish.
A number of attacks peeled off into the final few hundred metres, with Guillaume Van Keirsbulck (CCC) hitting out first before Edvald Boasson - Hagen (NTT) made his charge for the line.
The Norwegian was then overtaken by team-mate Gibbons, sweeping through the field with Van Avermaet chasing, but the South African had timed his attack well, finishing with daylight between him and his opponents.
Rally's Pier-Andre Cote finished second, with Mitchelton-Scott's Nick Schultz third. Mathieu van der Poel (Alpecin-Fenix) then came in fourth, with Aussie Freddy Ovett (Israel Start-Up Nation) rounding out the top five.
The first stage took in four laps of the 9.1km Watopia hilly reverse course, totalling just over 36km.
Reinardt Janse van Rensburg had attacked with 7km, taking the final sprint points ahead of Harry Sweeney, as Mitchelton-Scott held just a one-point lead over NTT in the overall classification.
Van der Poel was near the front on the final climb as Boasson Hagen put out nearly 600W to stay in contact with the front group up the final ascent of the climb, the elastic snapping just behind him as Ineos' Pavel Sivakov pushed the pace at the front.
Kwiatkowski then took over from his Russian team-mate, before Boasson-Hagen moved to the front and Schultz then lead over the final climb, with Gibbons coming up with the goods after the descent into the finish.
Gibbons' stage victory helped his NTT team to first in the overall classification of the virtual Tour de France, taking just a one-point lead over Rally into stage two, with Alpecin-Fenix seven points further back in third.
Virtual Tour de France, stage one: Watopia (36.4km)
1. Ryan Gibbons (RSA) NTT, in 45-17
2. Pier-Andre Cote (Can) Rally, at same time
3. Nick Schultz (Aus) Mitchelton-Scott, at one second
4. Mathieu van der Poel (Ned) Alpecin-Fenix
5. Freddy Ovett (Aus) Israel Start-Up Nation
6. Edvald Boason Hagen (Nor) NTT
7. Matteo Dal-Cin (Can) Rally
8. Harry Sweeny (Aus) Lotto-Soudal
9. Greg Van Avermaet (Bel) CCC, all at one second
10. Michal Kwiatkowski (Pol) Ineos, at 2s
General classification standings after stage one
1. NTT (RSA) - 80 points
2. Rally (Can) - 79 points
3. Alpecin-Fenix (Bel) - 72 points
Thank you for reading 20 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1