Usain Bolt ran under 10 seconds for the first time this year as he narrowly won the 100 metres at the Monaco Diamond League meeting on Friday.
The eight-times Olympic sprinting champion was slow out of the blocks, just as he was in his last race in Ostrava last month, and never managed to put a big gap between him and the field.
He won in 9.95 seconds, three hundredths of a second ahead of American Isiah Young. South Africa's Akani Simbine was third in 10.02.
Before the meeting, the Jamaican went to Germany to have treatment for back issues that have troubled him for years. It was his last outing before next month's world championships in London where he will race in the 100 metres and 4x100m relay.
"It was good, I'm going into right direction, still a lot of work to do," said Bolt, who is scheduled to retire after the world championships.
"I'm always here for the fans, and of course I will miss the vibe around the track. Mixed emotions always -- happy for my career, sad that it is ending. Sub 10 is always good. It was an exciting race, lots of energy."
Olympic and world champion Wayde van Niekerk won a titanic battle against Botswana's Isaac Makwala to take the 400 metres.
The South African, also the world record holder in the event, made a lightning start, then Makwala recovered to lead coming off the final bend before Van Niekerk powered down the final straight to win in 43.73 seconds.
Makwala's time of 43.84 was a personal best.
Van Niekerk's fellow South African, Caster Semenya, won a dramatic women's 800 metres in a season's best and meeting record time of 1:55.27.
The Olympic champion snatched the win in the last few metres ahead of Burundi's Francine Niyonsaba and Ajee Wilson, who both set national records. The trio had been neck and neck down the final straight.
Wilson's 1:55.61 shattered the previous US record of 1:56.40 set by Jearl Miles-Clark in 1999.
Elijah Manangoi upstaged a strong field to win the men's 1500 metres in a year's best time of 3:28.80.
He sped past compatriot Timothy Cheruiyot on the final straight after the two broke clear of the field while Olympic champion Matt Centrowitz was well beaten in ninth.
Manangoi's fellow Kenyan, Emmanuel Korir, also ran the fastest time of the year as he won the men's 800 metres in 1:43.10.