Villarreal 0-1 Maccabi Tel-Aviv
Maccabi Tel-Aviv upset Spanish side Villarreal 1-0 as Nick Blackman scored the winner.
Nevertheless, Villarreal finished first in Group A with Astana progressing alongside them.
Dynamo Kyiv 4-1 Partizan
Dynamo Kyiv sealed top spot in Group B with a 4-1 win over second-placed Partizan.
Mykola Morozyuk scored the opener before Moraes doubled the lead and then made it 3-0 shortly afterwards.
Marko Jevtovic pulled a goal back, but Moraes then sealed his hat-trick — and the three points along with it.
Hoffenheim 1-1 Ludogorets
Hoffenheim and Ludogorets played to a draw, with goals coming from Philipp Ochs and Wanderson.
Sporting Braga finished top of Group C, with Ludogorets having to settle for second.
Rijeka 2-0 AC Milan
Milan were shocked 2-0 by Rijeka as Gennaro Gattuso’s woes continued.
Jakov Puljic opened the scoring before Mario Gavranovic doubled Rijeka’s lead.
Nevertheless, the Italians finished top of Group D, with AEK Athens second.
Apollon 0-3 Everton
Everton continued their good start to life under Sam Allardyce with a 3-0 win over Apollon.
Ademola Lookman netted twice before Nikola Vlasic sealed the game late on.
The Toffees nevertheless finished only third in Group E, with Atalanta first and Lyon second.
Zlin 0-2 Lokomotiv Moscow
Lokomotiv claimed a 2-0 win over Zlin thanks to an own goal from Josef Hnanichek and a Jefferson Farfan strike.
The Russians thus clinched top spot in Group F, with Copenhagen going through in second.
Steaua Bucuresti 1-2 Lugano
Lugano claimed a 2-1 win over Steaua as Fabio Daprela and Balint Vecsei netted for them.
Harlem-Eddy Gnohere pulled one back for Steaua, who lost the game, but still progressed from Group G in second place behind Viktoria Plzen.
Arsenal 6-0 BATE Borisov
BATE were eliminated from the Europa League as Arsenal thrashed them 6-0. The Gunners will be joined by Crvena Zvezda in the next round after the side from Belgrade clinched second place in Group H.
Arsenal raced into a 3-0 lead in the first half thanks to goals from Mathieu Debuchy, Theo Walcott and Jack Wilshere.
Denis Polyakov scored an own goal early in the second half before Olivier Giroud’s penalty and Mohamed Elneny’s strike sealed the rout.
Marseille 0-0 Red Bull Salzburg
Marseille and Salzburg played to a 0-0 draw. Salzburg finished top of Group I, with the French giants in second.
Zorya 0-2 Athletic Club
Athletic claimed a 2-0 win over Zorya in their final group game, with Aritz Aduriz and Raul Garcia netting.
The Spanish side thus finished first in Group J ahead of Ostersunds.
Vitesse 1-0 Nice
Nice qualified in second place behind Lazio in Group K despite losing 1-0 to Vitesse.
The Dutch side won on the night thanks to a late Luc Castaignos goal.
Real Sociedad 1-3 Zenit
Zenit finished top of Group L with Real Sociedad second as the Russian giants beat the Spaniards 3-1.
Aleksandr Erokhin put Zenit ahead before Willian José equalised. Top spot was clinched in the second half thanks to goals from Branislav Ivanovic and Leandro Paredes.
Atalanta 1-0 Lyon
Austria Wien 0-0 AEK
Basaksehir 2-1 Braga
Copenhagen 2-0 Sheriff
Slavia Praha 0-1 Astana
Young Boys 2-1 Skenderbeu
Crvena Zvezda 1-0 Koln
Guimaraes 1-1 Konya
Hapoel Be’er Sheva 0-2 Viktoria Plzen
Hertha BSC 1-1 Ostersunds FK
Vardar 1-1 Rosenborg
Zulte Waregem 3-2 Lazio