Debutants Ireland grabbed the third tie in World Cup history in a thrilling clash with Zimbabwe at Sabina Park.
Jeremy Bray’s century gave Ireland hope with a total of 221 for nine but Zimbabwe seemed well-placed for victory in Jamaica before a flurry of late wickets.
The Africans went into the final over requiring nine to win and after scoring eight, the scores were level with one Andrew White delivery remaining.
But the otherwise dominant Stuart Matsikenyeri (73 not out) swatted and missed to leave the match all square.
With the Irish asked to bat first in Jamaica, Australia-born Bray stayed at the crease for the full 50 overs to record an unbeaten 115 in Ireland’s respectable total.
They had appeared in trouble at 89 for five before Bray’s ton and useful late contributions from White (28) and captain Trent Johnston (20).
When the otherwise impressive Vusi Sibanda (67) trod on his own stumps to leave Zimbabwe 128 for four in their run chase, Ireland were suddenly in the ascendancy.
But Matsikenyeri guided Zimbabwe to the verge of glory before the final-ball drama.
Earlier, Ireland lost their first wicket without a run being scored when William Porterfield edged behind off Christopher Mpofu in the opening over.
Middlesex’s Eoin Morgan and the veteran Bray wasted no time in repairing the damage, although the Zimbabwean seamers always threatened in the overcast conditions.
Their 43-run partnership was ended in the 10th over when Morgan was caught in the slips off Gary Brent for a 27-ball 21.
Niall O’Brien was caught off the lively Elton Chigumbura for just one – leaving his side teetering on 44 for three – before Andre Botha (one) foolishly left a ball from the same bowler that straightened only slightly to clip the top of his bails.
Kevin O’Brien followed for a watchful 10 when he edged behind off seamer Ed Rainsford, while Bray and White then frustrated Zimbabwe before the latter was trapped lbw by Gary Brent for 28.
Ireland had reached 170 for six when rain stopped play for 25 minutes, but soon after the teams re-emerged Johnston was run out following a quickfire 20.
Kyle McCallan was stumped three balls later without scoring before before Bray completed a 132-ball century in the 48th over.
Bray and Dave Langford-Smith (15) turned on the style at the death before the latter was caught off the final ball of the innings.
Zimbabwe openers Vusi Sibanda and Terry Duffin made a positive start to the run chase before the latter departed for 12.
Duffin was all smiles moments earlier after being dropped twice in three balls off Boyd Rankine, but it was third time unlucky as he edged the next delivery to relieved keeper Niall O’Brien – one of the guilty parties earlier in the over.
Sibanda raced towards a half-century, which was fortunate as toiling partner Chamu Chibhabha appeared adept at finding only fielders early on in his knock.
Change bowlers Johnston and Andre Botha began to exert some control over the Zimbabwean dangerman, but they could not prevent him from reaching a 62-ball 50.
It was no surprise when Chibhabha guided a Johnston delivery straight to Langford-Smith at mid-off to end an ugly knock of 12.
The Africans were three down when Sean Williams (14) scooped spinner McCallan to Rankin with the score on 107.
Ireland then grabbed the key wicket of Sibanda in unusual fashion when he hit wicket fending off a White delivery.
Elton Chigumbura followed for just four to leave the match very much in the balance, but Matsikenyeri and Brendan Taylor put on a timely 50 to put Zimbabwe back in control.
Ireland benefited from a huge slice of luck when McCallan tipped Matsikenyeri’s straight drive onto the stumps to run out Taylor (24) as he backed up.
Botha then trapped Brent lbw for three and Prosper Utseya swatted Kevin O’Brien to mid off for a duck to leave the Africans needing nine from 11 balls with two wickets in hand.
Christopher Mpofu ran himself out on the last ball of the penultimate over – a Kevin O’Brien maiden – to leave Matsikenyeri on strike needing nine from six.
Eight were struck from the first five deliveries before the all-important dot ball.
In the ensuing melee Rainsford was run out to leave the Zimbabweans 221 all out.