Cameroon kept their hopes of making the last 16 of the World Cup alive on Monday after fighting back from two goals down to draw a thrilling Group G encounter with Serbia 3-3.
Rigobert Song's team looked almost dead and buried after goals from Strahinja Pavlovic, Sergej Milinkovic-Savic and Aleksandar Mitrovic gave Serbia a 3-1 lead early in the second half.
But substitute Vincent Aboubakar and Eric Maxim Choupo-Moting snatched a draw with two quick-fire strikes just after the hour mark to leave both Cameroon and Serbia on a single point, two behind group leaders Brazil and Switzerland.
Had they lost, Cameroon would have been relying on the Swiss beating Brazil in order to not be eliminated with a game to spare, but instead the west Africans still have a chance of getting out of the group stage for the first time since 1990.
Cameroon have a tough task ahead as they play Brazil in their final match, which they will reportedly play without first-choice goalkeeper Andre Onana who was dropped from the matchday squad just hours before kick-off following an unspecified disciplinary issue.
Media reports suggest that Onana has been sent home from the World Cup after a disagreement with Song, but that pre-match turmoil didn't stop Cameroon putting in a fighting display against a Serbia team who probably deserved to win on the balance of play.
Asked by AFP whether he would start Cameroon's final match, Onana's replacement Devis Epassy said "you'll have to ask the coach" and insisted there was no problem in the camp.
Serbia meanwhile have to hope Brazil beat the Swiss, otherwise qualification will be taken out of their hands in the final round of Group G fixtures.
"We wanted all three points, we wanted to start this tournament with a win so it's hard to take," said substitute Marko Grujic.
"We need to take this point and watch the Brazil game tonight, hope that they win and then we hope to win against Switzerland."
Mitrovic was almost invisible in Serbia's defeat to Brazil but here he was involved from kick-off, the Fulham forward unlucky not to give Serbia the lead in the 11th minute when he crashed a shot off the post from a tight angle following a neat exchange of passes with Dusan Tadic.
- Cameroon comeback -
But Mitrovic only had himself to blame for not opening the scoring six minutes later, shanking an awful first-time finish wide when, after a mix-up in the Cameroon defence, the ball dropped at his feet with only Epassy to beat.
And Jean-Charles Castelletto punished the Serbs for Mitrovic's miss in the 29th minute with the simplest of finishes after ghosting in at the back post to meet Nicolas Nkoulou's flick-on at a corner.
Pierre Kunde then passed up a golden opportunity to double Cameroon's lead in the 43rd minute and it was Cameroon's turn to be undone at a set-piece when Pavlovic brilliantly headed home Tadic's floated free-kick.
Serbia's tails were up and Milinkovic-Savic flipped the match on its head two minutes later with a superb left-footed finish after Andre-Frank Zambo Anguissa sloppily gave the ball away just outside his own penalty area.
Mitrovic finally had the goal his strong display deserved seven minutes after the break, tapping in Andrija Zivkovic's pass unopposed at the end of a beautiful move guided by Milinkovic-Savic and Tadic.
The match looked over but from nowhere Cameroon sprang back into life thanks to Aboubakar's odd goal.
The Al Nassr forward raced through onto Castelletto's launched pass over the top and scooped an improbable finish over the Serbia 'keeper, beaming with delight after his goal was awarded following a VAR check.
Aboubakar's pace caused Serbia all kinds of problems and he laid on Choupo-Moting's leveller, bursting down the right and laying on a simple finish for the Bayern Munich forward which sparked wild celebrations on the pitch and in the stands.
Neither side could find a winner in an end-to-end finish to the game and their bids to make the knockouts will go down to the final game.