Bayern Munich were crowned champions of Germany for the seventh successive season with a crushing last-day victory over Eintracht Frankfurt.
Niko Kovac’s side, who trailed leaders Borussia Dortmund by nine points after 12 games, needed only a draw to secure a 29th Bundesliga title.
Kingsley Coman opened the scoring before Sebastien Haller equalised.
David Alaba, Renato Sanches, Franck Ribery and Arjen Robben made sure of Bayern’s victory at the Allianz Arena.
They finished two points ahead of Dortmund, who won 2-0 at Borussia Monchengladbach thanks to goals from England winger Jadon Sancho and Marco Reus.
Robben, Ribery end Bundesliga careers in style
The pair – with 22 Bundesliga seasons, 185 goals and 15 titles between them – started from the bench alongside full-back Rafinha, who will also leave this summer.
By the time Robben and Ribery came on, Bayern were 3-1 up.
France midfielder Coman slid a shot past Kevin Trapp in the fourth minute of a torrid game for the Germany keeper, who faced 22 efforts on goal.
Despite Bayern’s dominance, substitute Haller fired in from close range five minutes into the second half.
With Dortmund leading at Monchengladbach, it still meant Kovac’s side would win the title, but only on goal difference.
However, any nerves were steadied when Alaba tapped in after Trapp failed to hold Thomas Muller’s shot, before substitute Sanches scored from a tight angle.
The first huge cheer of the match came when Ribery scored the game’s best goal 11 minutes after coming on.
The 36-year-old ran into the area from the left corner, swivelled past two defenders and dinked a shot past Trapp. It was his 86th league goal for Bayern.
Robben completed the rout and brought the home support to their feet once more when he tapped home from Alaba’s square ball.
Bayern players embraced Robben, Ribery and Sanches at the end of the match and they were given the honour of lifting the Meisterschale trophy by captain Manuel Neuer.
Bayern can complete the domestic double when they face RB Leipzig in the DFB Pokal final on 25 May.