Mark Patton scored the winner as Glenavon beat Ballymena United 2-1 at Windsor Park in an Irish Cup final which saw three players sent off.
Glenavon's Gareth McKeown and United midfielder Gary Thompson saw first-half red cards while Kyle Neill's free put the Lurgan Blues ahead on 35 minutes.
Allan Jenkins levelled with a backpost strike before substitute Patton hit the bottom corner after 76 minutes.
Tony Kane was red-carded in injury-time as Ballymena finished with nine men.
It was Glenavon's first Irish Cup triumph since 1997 while Ballymena have not won it for 25 years.
The opening quarter of the game was devoid of incident, but it was merely the calm before the storm with a dramatic final 27 minutes of the first half.
United full-back Jim Ervin was forced off with a knee injury seconds before McKeown's straight red on 29 minutes for an elbow on Ballymena keeper Aaron Shanahan.
The game opened up after the dismissal and Lurgan Blues midfielder Ciaran Martyn dragged a shot wide while United striker David Cushley sliced over at the backpost.
Neill made a 35th minute breakthrough with a superb strike, his 25-yard free-kick arrowing into the top corner.
Thompson was next to be shown a straight red card by referee Raymond Crangle, the midfielder sent off for a high challenge on Shane McCabe after 40 minutes.
Glenavon forward Guy Bates saw his overhead kick deflected wide two minutes later as Gary Hamilton's side made a strong finish to the half.
Ballymena improved on the restart as they chased the equaliser and Kane's powerful 30-yard flew just over the bar.
Martyn produced a goal-saving block to deny Darren Boyce on 68 minutes but United were soon rewarded for their second-half enterprise.
Glenavon keeper James McGrath failed to collect as a corner found Jenkins at the backpost and the United skipper Jenkins chested down before firing in from close range.
Parity lasted only five minutes as Patton again showed his value from the bench, hitting the bottom corner with a pinpoint strike from 20 yards.
Ballymena squandered a chance to level two minutes from time with Cushley clear on goal but McGrath raced out to save the striker's shot.
Kane became the third player to receive a straight red card after a poor challenge on Glenavon player/manager Hamilton deep into the injury time.
Ballymena United: Aaron Shanahan, Jim Ervin, Stephen McBride, Johnny Taylor, David Munster, Tony Kane, Gary Thompson, Allan Jenkins (capt), Alan Teggart, David Cushley, Darren Boyce.
Glenavon: James McGrath, Rhys Marshall, Kris Lindsay (capt), Gareth McKeown, James Singleton, Andy McGrory, Ciaran Martyn, Shane McCabe, Kyle Neill, Guy Bates, Tiarnan Mulvenna.
Referee: Raymond Crangle (Belfast)