Liverpool and Chelsea confirmed their qualification for the last two places in next season's Champions League after a dramatic last day in the Premier League.
Sadio Mane scored a goal in each half as Liverpool breezed past Crystal Palace 2-0 to finish the season in third place.
Liverpool's win lifted them above Chelsea, who will return to the Champions League no matter what happens in next weekend's final against Manchester City, despite a 2-1 defeat to Aston Villa.
Goals from Bertrand Traore after 43 minutes and Anwar El Ghazi's 52nd-minute penalty put Villa 2-0 up before Ben Chilwell pulled a goal back for Chelsea, who had Cesar Azpilicueta sent off in the last minute of the match.
Chelsea's defeat opened the door for Leicester City to finish above them and claim the last Champions League spot, but Leicester suffered a 4-2 defeat at home to Tottenham.
The Londoners twice came back from Jamie Vardy goals with efforts from Harry Kane and a Kasper Schmeichel own goal, before Gareth Bale won the game with late strikes in the 87th and 96th minutes to break Leicester's hearts.
The win assured Tottenham finish seven to secure a place in next season's Conference League, while Leicester will join West Ham United in next season's Europa League.
West Ham assured an impressive sixth-place finish with a comfortable 3-0 win at home to Southampton thanks to goals from Pablo Fornals in the 30th and 33rd minute, before Declan Rice added a third in the 86th minute.
Those results mean that Arsenal misses out on a place in Europe despite a Nicolas Pepe brace which gave them a 2-0 win at home to Brighton, while Everton's 5-0 thrashing away to Manchester City ended their slim European hopes.
Kun Aguero came on as a second-half substitute to net City's last two goals in his last appearance for this season's champions.
Elsewhere, Leeds United ended a successful return to the top-flight with a 3-1 win at home to West Brom, Newcastle finished a difficult season with a 2-0 win away to relegated Fulham and Sheffield United said 'goodbye' to the Premier League with a 1-0 triumph at home to a disappointing Burnley.
Finally, Manchester United warmed up for this week's Europa League final by ruining Nuno Espiritu Santo's last game in charge at Wolves, with goals from 19-year-old Anthony Elenga and veteran Juan Mata giving a much-changed side a 2-1 win.