Usain Bolt pips Asafa Powell in Diamond League 100m
Usain Bolt was pushed all the way in the 100m before powering home to take victory at the Diamond League in Oslo in a time of 9.79 seconds.
The world record holder finished clear of Asafa Powell, who came second in 9.85 seconds, his best time of 2012.
Team GB's Marlon Devonish finished sixth but Mark Lewis-Francis was disqualified following a false start.
Jessica Ennis, who was taking part in the 100m hurdles, also missed out after false-starting.
The men's 100m was the race everyone was waiting for and it did not disappoint.
Jamaican Powell has history in Oslo after setting the stadium record of 9.72 seconds two years ago. Neither he nor Bolt could emulate that time but Powell did enjoy his best time of the year so far, as the compatriots head into form at the right time.
Powell started the better, as he burst out of the blocks and must have thought, for a split second at least, he had got the better of his countryman, only for Bolt to power through to pip him at the post.
Such was his surge at the end, his momentum almost saw a flower girl sent flying but, still beaming from victory, the Jamaican showed some neat footwork to keep the girl on her feet.
It was a night of mixed emotions for the Britons in action with Lewis-Francis and Ennis disqualified.
Ennis, who was making a rare appearance at the Diamond League, qualified for the final of the 100m hurdles in third place, behind world champion Sally Pearson.
But as she lined up for the final she was too eager to get out of the blocks and was shown a red card.
The race got under way without the heptathlete and as expected Australia's Pearson won in some style, with a time of 12.49 seconds, with Great Britain's Tiffany Porter in third place.
Britain's world 400m hurdles champion Dai Greene was making his first Diamond League appearance of the season and admitted he struggled to keep the pace set by winner Javier Culson.
The Puerto Rican cruised to victory in a time of 47.82 seconds, with Greene in fourth with 48.98.
"I think I went off too fast for where my fitness levels are at the moment," said a disappointed Greene, who has been suffering with a virus.
Nicola Sanders was another who was left disappointed after she came eighth in the women's 400m, some three seconds behind Botswana's Amantel Montsho who made easy work of the field in a time of 49.68.
"I'm really disappointed," said the 29-year-old Brit. "I felt really good in warm-up. It's a shocking time, just wasn't good enough."
Abi Oyepitan finished second in the women's 200m behind Murielle Ahoure, who ran the fifth fastest time in the world this year.
Oyepitan also competed in the 100m but finished in last place, in a time of 11.70. Fellow Brit Montell Douglas finished fifth, while Norwegian Ezinne Okparaebo took first place on home turf.
There was better news in the 800m where Britain took first and second place.
Gareth Warburton set a new Welsh record as he won the race in one minute 44.98 seconds, which is also an Olympic 'A' standard. Guy Learmonth came second, with a personal best of 1:47.14.