Chester-le-Street - Sri Lanka held off a West Indies charge at Chester-le-Street on Monday to win an exciting battle of two World Cup also-rans by 23 runs, with watching pop idol Rihanna left disappointed.
Both teams came into the match aware they could not reach the semi-finals but the Caribbean side made a good attempt at what would have been the highest successful chase in World Cup history.
Sri Lanka batted brightly to post an imposing total of 338 for six in their 50 overs, thanks largely to 21-year-old Avishka Fernando's first one-day international century.
The West Indies, roared on by Barbados-born Rihanna, were in early trouble but Nicholas Pooran dug deep, also scoring his maiden ODI ton, to take them close to victory before he was sensationally dismissed by Angelo Mathews -- bowling for the first time in an ODI since 2017.
"Pooran and (Fabian) Allen batted really well," said Sri Lanka captain Dimuth Karunaratne. "The two run-outs changed the game.
"Angelo put his hands up and said 'OK I will bowl two overs'. He has that confidence. He did the job. I don't think he is going to bowl much more but if it is a crucial time he might bowl a couple of overs."
Earlier, Chris Gayle flickered briefly but was caught for 35 from a steepling top edge by Jeffrey Vandersay off the bowling of Kasun Rajitha.
Pooran, 23, held the innings together but the West Indies' hopes were badly hit when Carlos Brathwaite was unluckily run out when bowler Isuru Udana diverted the ball into the stumps off his fingertips with the batsman out of his ground at the non-striker's end.
Allen then joined Pooran and put on 83 for the seventh wicket until he was the victim of the third run-out of the innings and departed for an eye-catching 51 off just 32 balls.
The Caribbean side needed 31 runs off the final three overs when Karunaratne summoned Mathews to bowl.
He struck with his first ball, removing a distraught Pooran, who slashed at an innocuous wide delivery and was caught behind by wicketkeeper Kusal Perera, effectively ending the West Indies' hopes.
Earlier, man-of-the-match Fernando hit a sparkling maiden ODI century, with all of the top order chipping in to help him.
The 21-year-old reached three figures off exactly 100 balls with eight fours and two sixes but was caught by Allen off the bowling of Sheldon Cottrell for 104.
Sri Lanka had revived their fading hopes of reaching the World Cup semi-finals by beating England but a heavy defeat against South Africa and results elsewhere ended their chances.
West Indies started the tournament with a thumping seven-wicket victory against Pakistan but have not won a single match since, with their batsmen in particular letting them down.
"We were sloppy, we have to be better," said West Indies skipper Jason Holder. "This entire tournament we have let key moments slip."
"We have got in good positions and thrown it away throughout the tournament," he added. "The run-outs were crucial. We were one or two partnerships away."
Australia are still the only side mathematically certain of their place in the semi-finals, with India, New Zealand and England currently occupying the other top-four slots.
Pakistan and Bangladesh still have a chance of progressing.