Ireland will take on Scotland in the ICC Trophy final after an unbeaten 64 from Peter Gillespie guided the hosts to victory over Canada.
Chasing 239 to win, Ireland were in deep trouble on 106 for five but Gillespie put on a 66-run sixth wicket stand with Trent Johnston to guide their team to a dramatic four-wicket win.
Not for the first in this tournament, Ireland lost early wickets and appeared to be in real danger as Canadian bowlers Kevin Sandher and Sanjayan Thurasingham motored through the hosts' top-order.
With Middlesex batsman Ed Joyce, who is the leading run scorer in the competition, absent with county commitments, it was left up to other members of the middle order to rescue Ireland's trophy hopes.
Skipper Jason Molins scored 44 at the top of the innings but it was contributions lower down from Johnston (44) and Andrew White, 28 not out, that assisted Gillespie.
White and Gillespie, who scored his matching-winning knock off just 70 balls, put together an unbroken stand of 70. And Ireland recorded a famous win with just four balls to spare, with Gillespie hitting Umar Bhatti for a six to seal the win.
Earlier, Molins won the toss and chose to field but the Ireland skipper must have regretted that decision almost immediately.
After just four overs, Canada had raced to 46 for one, with John Davison smashing 33 from 15 balls before Johnston trapped him in front.
The loss of Davison did not hold his side back and they progressed to 114 in the 22nd over, but the loss of Zubin Surkari for 31 to Andre Botha sparked a mini collapse.
In-form Ian Billcliff fell to Botha for a duck and, when Kyle McCallan went for 35 in the next over, Canada had lost three wickets without scoring.
The middle order of Sunil Dhaniram, Pubudu Dassanayake and Don Maxwell dug in to help take their side to 238-9. Botha was the pick of the Irish attack finishing with 4-47 from nine overs.
PA