Host nation Zimbabwe missed their chance to secure the second qualification place for next year's Cricket World Cup as they lost by three runs to United Arab Emirates (UAE), bottom of the Super Sixes group, in their final, rain-affected qualifying match at Harare Sports Club.
Zimbabwe's only hope of joining the West Indies as qualifiers now rests on tomorrow's final Super Sixes match between Ireland and Afghanistan, both of whom are just a point behind them, being a low-scoring tie.
It was the first win against a Test-playing nation in a One Day International for the UAE, who had lost every previous match in the Super Sixes.
The home side won the toss and chose to field, with UAE then making 237-7 from 47.5 overs.
Rameez Shahzad was their top scorer, making 59 from 61 balls.
For Zimbabwe, Sikander Raza took three for 41.
Under the Duckworth-Lewis method, Zimbabwe were set a revised target of 230 runs from 40 overs due to rain.
Sean Williams did his bit with 80 from 80, but with Mohammed Naveed, man of the match, taking three for 40, Zimbabwe fell just short of their target.
In gathering darkness, Zimbabwe required 19 off the last two overs as this International Cricket Council event produced the latest in a succession of dramas.
But by the time they reached the final ball they needed a six to win, and two runs left them three short.
Winning captain Rohan Mustafa said: "It's a big win for us, beating a Test team.
"No-one knew about us, now they'll know about us.
"Feel sorry for Zimbabwe, but that's sport.
"Injuries hurt us in the Super Sixes, but we have shown how much we've changed in the past 1.5 years.
"We'll come hard next time."
Zimbabwe’s captain Graeme Cremer added: "We lost wickets in crucial periods.
"Taking nothing away from UAE, they bowled and fielded excellently.
"Credit to our team for holding our nerve in a few games through the tournament.
"We'll pick ourselves up soon, but right now it doesn't feel too good."