Wednesday 7 December 2016 22:26, UK
We examine the permutations for each side for matchday six of the Champions League group stage.
Who can still qualify? And who needs what to make it to the last 16?
Check out the state of play with our group-by-group rundown of what each club needs...
Tottenham will not feature in the round of 16 after defeat to Monaco, and will need a point against CSKA Moscow in their final group game at Wembley to seal Europa League football.
Group leaders Monaco have qualified for the knockout stages, along with Bayer Leverkusen who drew away to bottom club CSKA on Tuesday.
The Russian side will battle it out with Spurs for a spot in the Europa League, and need a win to take their place in that competition.
Borussia Dortmund were the only team in this section to have already guaranteed their passage to the round of 16 before matchday five, and they took an even stronger grip on top spot with a stunning 8-4 victory over Legia Warsaw.
They will top the group providing they do not get beaten by Real Madrid at the Bernabeu in the final round of games. The Spanish giants have also qualified for the knockouts after beating Sporting Lisbon.
Sporting and Legia Warsaw will go head to head for a Europa League spot. A draw will be enough in Poland on December 7 to send the Portuguese side through, while their opponents will need a win to make the competition.
Leicester guaranteed their place in the knockout stages with a 2-1 win against Club Brugge, who remain bottom of the table with no points and exit the European competition.
The Foxes also top the group after a goalless draw between Porto and FC Copenhagen, who will need to wait until the final game week to decide who also goes through to the last 16.
Porto would qualify with a point at home to Leicester if Copenhagen lose or draw in Bruges, but a win for the Danish club would mean the Portuguese outfit would need all three points themselves to qualify, as they have an inferior goal difference. Both meetings between Porto and Copenhagen earlier in the competition ended all square, so head-to-head cannot separate them.
Sevilla missed the chance to take their place in the round of 16 after being beaten by Juventus, who have sealed their spot in the knockout stages after the 3-1 victory.
The current Europa League holders now need a point in their final game at Lyon, who are their direct competition for second place. The French side will need to win and better Sevilla's goal difference to knock them into third.
If Lyon win, but do not better the goal difference, Sevilla will still go through to the knockout stages as they would both have one victory each in the head-to-head rule, but the La Liga outfit would edge it on goal difference.
If Sevilla win, they will ensure their spot in the last 16 and if Juve lose or draw at home to Dinamo Zagreb - who are already out of contention - they will go through as group winners.
Arsenal won the group after Paris Saint-Germain's surprising 2-2 draw at home to Ludogorets. PSG go through to the last-16 in second place while the Bulgarian side beat Basel to third and Europa League qualification.
Napoli's 2-1 win at Benfica means they finish top of Group B, but the Portuguese side go through in second after Besiktas were thumped 6-0 at Dynamo Kiev. Besiktas finished third and go through to the Europa League.
Group C was done and dusted before the final round of games.
Barcelona finished top and put the icing on the cake with their 4-0 win against Borussia Monchengladbach, who came third behind Manchester City. Celtic held City to a respectable 1-1 draw at the Etihad on Tuesday night, but they still came last.
Bayern Munich beat Atletico Madrid 1-0 on the final matchday in Group D, but Atletico had already guaranteed top spot before their trip to Germany.
Rostov, meanwhile, beat PSV Eindhoven to third after they held the Dutch side to a goalless draw.