With two matches to play, the Bundesliga’s relegation race is muddled and the European battle is set to go down to the wire.
There’s Bayern at the top, Koln at the bottom, and mostly chaos in between.
[ MORE: Fellaini, Pogba react to late win ]
Mainz 3-0 RB Leipzig
A seismic statement from Mainz, who greeted Hamburg’s hot streak with a convincing win that moved it five points clear of automatic relegation and three above the playoff spot.
Pablo De Blasis converted a 29th minute penalty kick to give Mainz an advantage that would later be buttressed by a pair of goals in the final five minutes from Alexandru Maxim and Bote Baku.
Now RB Leipzig, last year’s surprise runners-up, are on the precipice of missing out on European play altogether. Sixth-place Leipzig needs collapses from Hoffenheim and Bayer Leverkusen to finish Top Four, and could finish as low as bottom half with poor performances against Wolfsburg and Hertha Berlin.
Mainz gets a second goal late in the game and surely that will mean 3 points for the home side! pic.twitter.com/rFi8P9Zxe8
— FOX Soccer (@FOXSoccer) April 29, 2018
Wolfsburg 1-3 Hamburg
The wobbly seasons continue for Wolfsburg, and this one features a massive six-point loss to Hamburg Sunday.
American striker Bobby Wood converted a 43rd minute penalty -- U.S. teammate John Anthony Brooks was on the bench for Wolfsburg -- and the hosts could never get level in allowing their visitors to get within two points of 16th place.
Elsewhere
Hertha Berlin 2-2 Augsburg
Freiburg 3-2 Koln
Bayern Munich 4-1 Eintracht Frankfurt
Schalke 1-1 Borussia Monchengladbach
Bayer Leverkusen 0-1 Stuttgart
Werder Bremen 1-1 Borussia Dortmund
Hoffenheim 3-1 Hannover 96
STANDINGS
| Team | GP | W | D | L | GF | GA | GD | Home | Away | PTS |
| Bayern Munich | 32 | 26 | 3 | 3 | 88 | 23 | 65 | 14-2-0 | 12-1-3 | 81 |
| FC Schalke 04 | 32 | 16 | 9 | 7 | 50 | 36 | 14 | 9-5-2 | 7-4-5 | 57 |
| Borussia Dortmund | 32 | 15 | 10 | 7 | 62 | 42 | 20 | 9-4-3 | 6-6-4 | 55 |
| 1899 Hoffenheim | 32 | 14 | 10 | 8 | 63 | 45 | 18 | 10-4-2 | 4-6-6 | 52 |
| Bayer Leverkusen | 32 | 14 | 9 | 9 | 55 | 42 | 13 | 7-5-4 | 7-4-5 | 51 |
| RB Leipzig | 32 | 13 | 8 | 11 | 47 | 50 | -3 | 8-4-4 | 5-4-7 | 47 |
| Eintracht Frankfurt | 32 | 13 | 7 | 12 | 42 | 44 | -2 | 7-4-5 | 6-3-7 | 46 |
| VfB Stuttgart | 32 | 13 | 6 | 13 | 30 | 35 | -5 | 9-4-3 | 4-2-10 | 45 |
| Mönchengladbach | 32 | 12 | 8 | 12 | 43 | 49 | -6 | 8-4-4 | 4-4-8 | 44 |
| Hertha BSC Berlin | 32 | 10 | 13 | 9 | 40 | 37 | 3 | 5-7-4 | 5-6-5 | 43 |
| FC Augsburg | 32 | 10 | 11 | 11 | 42 | 42 | 0 | 6-4-6 | 4-7-5 | 41 |
| Werder Bremen | 32 | 9 | 11 | 12 | 35 | 39 | -4 | 6-6-4 | 3-5-8 | 38 |
| Hannover 96 | 32 | 9 | 9 | 14 | 39 | 50 | -11 | 7-3-6 | 2-6-8 | 36 |
| FSV Mainz 05 | 32 | 8 | 9 | 15 | 35 | 49 | -14 | 7-3-6 | 1-6-9 | 33 |
| SC Freiburg | 32 | 7 | 12 | 13 | 29 | 53 | -24 | 6-6-4 | 1-6-9 | 33 |
| VfL Wolfsburg | 32 | 5 | 15 | 12 | 31 | 43 | -12 | 2-8-6 | 3-7-6 | 30 |
| Hamburger SV | 32 | 7 | 7 | 18 | 27 | 49 | -22 | 5-4-7 | 2-3-11 | 28 |
| 1. FC Köln | 32 | 5 | 7 | 20 | 33 | 63 | -30 | 3-5-8 | 2-2-12 | 22 |