Newcastle United 1-1 Aston Villa
Jordan Ayew's piledriver denied Newcastle a third successive Premier League victory and handed relegation-haunted Aston Villa a glimmer of hope.
The Ghana international cancelled out a rare Fabricio Coloccini strike - his first goal in more than 13 months - and ensured a 1-1 draw on a rain-soaked evening at St James' Park.
Villa grew into the game after finding themselves under the cosh for most of the first half and enjoyed the better of the second as the Magpies went to pieces in front of a crowd of 48,234.
Remi Garde's side remain at the foot of the table - and few sides who have occupied that position at Christmas have survived - but the manner in which they played will at least give cause for a little more optimism.
Newcastle ran out having been warned by head coach Steve McClaren not to underestimate Villa, and the opening 45 minutes proved to be something of an arm-wrestle.
Neither keeper had a save of note to make for more than half an hour until Brad Guzan was called upon on the half-hour when Daryl Janmaat picked out Papiss Cisse with a whipped cross, but the striker's header lacked both power and direction.
The Senegal international departed three minutes later through injury and was replaced, to popular acclaim, by Aleksandar Mitrovic, who was soon in the thick of the action.
Both the Serbia international and Georginio Wijnaldum were unable to reach Moussa Sissoko's driven 33rd-minute cross, but Mitrovic forced the first genuine save of the game from Guzan with a looping 37th-minute header, and the home side took the lead from the resulting corner.
Siem de Jong appeared to mishit his corner, but it was allowed to travel across the penalty area to Coloccini, who gleefully thumped it past Guzan's despairing dive.
Standing water on the pitch was making life difficult for both sides, but Villa coped better as the half-time whistle approached and full-back Leandro Bacuna curled an injury-time free-kick into Rob Elliot's midriff after Idrissa Gueye had been felled by Chancel Mbemba 25 yards out.
Elliot was extended significantly further by Jordan Veretout's stinging left-foot drive within seconds of the restart and as Villa enjoyed their best spell of the game, Ayew volleyed high over after Paul Dummett had half-cleared a Veretout free-kick.
But De Jong really should have put the game to bed with 57 minutes gone when he was picked out unmarked by Wijnaldum beyond the far post, but somehow contrived to miss the target.
The visitors made their hosts pay with 61 minutes gone when, after substitute Rudy Gestede had forced a fingertip save from Elliot, Ayew smashed a stunning shot across the keeper and inside the far post to level.
McClaren's men were rocking and they might have fallen behind four minutes later when Gestede only just failed to get a touch on Ayew's teasing cross as he slid in.
Both sides went for the victory in a thrilling conclusion with Elliot denying Gestede a later winner and substitute Ayoze Perez passing up a last-gasp opportunity.