Game of frustration? Bayern Munich coach Thomas Tuchel / © AFP
Borussia Dortmund are on the brink of breaking Bayern Munich's decade-long stranglehold on the German championship, with their title-deciding match against Mainz on a nerve-shredding final day of the Bundesliga on Saturday.
Star-studded Bayern have had the title in their bag well before the end of previous seasons, but this time, their slip-ups and Dortmund's persistence are keeping the suspense going to the final whistle.
European spots are also up for grabs alongside one of the tightest relegation battles in recent memory.
At the top of the table, Dortmund know a win over mid-table Mainz will secure their first Bundesliga title since 2012, while Bayern can claim their 11th straight Bundesliga title with a win at Cologne -- but only if the leaders slip up.
Dortmund coach Edin Terzic called on his side not to lose focus, with one game to play.
"We're not done yet, but we're ready to take the final step," Terzic said, "As a team, as a club, as a city."
Terzic was called "the best Dortmund coach since Jurgen Klopp" on Thursday by Germany's Sueddeutsche Zeitung newspaper, putting the 40-year-old ahead of Bayern boss Thomas Tuchel, perhaps a sign of how far the former Chelsea mentor's stock has fallen since taking the job.
Bayern have closed ranks ahead of a week which could see them go trophyless for the first time since 2011-12, but veteran Thomas Mueller called on fans to "stick together for one more week".
Writing on Instagram, Mueller -- who has been a key part of the Bayern team that has won the last ten Bundesliga titles -- told his 12.8 million Instagram followers "everything is still possible".
Further down the pecking order, one of Union Berlin or Freiburg will join RB Leipzig in the Champions League for the first time.
Level on points, Union hold a slight advantage on goal difference and can all but secure a top four spot by beating Werder Bremen at home, where they have not lost a league match this season.
Union manager Urs Fischer said "there's a lot at stake in this game" but urged his side to "stay relaxed, otherwise we'll cramp up."
Guaranteed at least fifth and a spot in the Europa League, Freiburg face a slightly tougher task if they want to overtake Union and claim a first Champions League appearance, travelling to Eintracht Frankfurt.
Despite lifting the Europa League trophy almost exactly 12 months ago, Frankfurt have only a slight mathematical chance of a return to European football, needing a big win while hoping both Wolfsburg and Bayer Leverkusen lose.
At the other end of the table, while last-placed Hertha Berlin's return to the second division after a decade was sealed last week, any one of four clubs -- Schalke, Bochum, Stuttgart and Augsburg -- could join them.
Schalke likely have the toughest challenge, travelling to face Leipzig, while Bochum host Leverkusen and Augsburg visit Borussia Moenchengladbach.
The third-last side escapes the automatic trapdoor to the second division but must play a two-legged relegation playoff against the third-best side in the second division.
One to watch: Jude Bellingham (Borussia Dortmund)
Dortmund midfielder may miss his side's title-deciding match against Mainz on Sunday, due to a knee injury / © AFP
Borussia Dortmund midfielder Jude Bellingham is in a race against time to be fit for Saturday's title-defining match against Mainz, in what may be his last game for the club.
Bellingham missed Dortmund's 3-0 win away at Augsburg on Sunday with a knee issue, only the second game the English teenager has missed in the past two seasons due to injury.
Despite a contract which runs until 2025 at Dortmund, he is being courted by Real Madrid and Manchester City.
"I feel good" Bellingham said on Wednesday, but sporting director Sebastian Kehl revealed the midfielder was sticking to an "incredibly ambitious" regime to return to the pitch.
Manager Edin Terzic said on Thursday Bellingham would "definitely be in the squad" but was still working hard to make the starting XI.
"We hope that the diligence he has shown will be rewarded."
4 - After just one goal in his previous 14 games, Bayern's Serge Gnabry has hit form, having scored in each of his last four games.
23-4 - Dortmund have scored 23 and conceded four in their past five home games (all wins).
16 - Bremen striker Niclas Fuellkrug has the league's most goals this season with 16 -- the lowest total since the Bundesliga was founded in 1963.
Fixtures (all times Saturday 1330 GMT)
Borussia Dortmund v Mainz, Cologne v Bayern Munich, Bochum v Bayer Leverkusen, Union Berlin v Werder, Wolfsburg v Hertha Berlin, RB Leipzig v Schalke, Eintracht Frankfurt v Freiburg, Borussia Moenchengladbach v Augsburg, Stuttgart v Hoffenheim