Arturo Vidal at his best for Bayern Munich in Dortmund draw
It wasn't quite a damp squib, but the much-hyped "Klassiker" between champions Bayern Munich and Borussia Dortmund ended goalless at the Westfalenstadion.
Bayern bounced back from the shock midweek defeat against Mainz, missing the better chances against their nearest challengers and also found Roman Burki in inspired form in the BVB goal.
In the cold light of day, Pep Guardiola's men will be the happier of the two sides as they maintained the status quo at the top, preserving a cosy five-point advantage. With nine games remaining, a historic fourth title in succession looks a formality.
Player ratings (1-10; 10=best; players introduced after 70 minutes get no rating):
GK Manuel Neuer, 8 -- Bayern's ever-present goalkeeper saved brilliantly from Pierre-Emerick Aubameyang in the opening moments of each half to keep his side level. Neuer excelled in racking up his 15th clean sheet in 25 league games in one of his busiest outings of the season.
DF Juan Bernat, 6 -- Dortmund tried to expose the Spaniard's lack of height and aerial ability with a few long balls but Bernat just about held firm.
DF David Alaba, 7 -- Impressive once again alongside Joshua Kimmich -- much more comfortable than with the Moroccan Medhi Benatia in midweek. Unless Javi Martinez gets match-fit, Bayern could go into the Juventus second leg without a "learned" centre-half.
DF Joshua Kimmich, 8 -- Restored to central defence in place of Benatia after sitting out the midweek defeat. Almost matched the Usain-Bolt-like Aubameyang for pace which is no mean feat, and also denied Marco Reus with a brilliant last-ditch tackle in the first half. Outstanding, considering he's playing out of position.
DF Philip Lahm, 6 -- Spared the ignominy of defeat in midweek against Mainz but returned to provide much-needed stability at the back. Gave the ball away far too frequently by his own lofty standards on his 300th Bundesliga appearance for the club.
MF Xabi Alonso, 6 -- The experienced 34-year-old also missed the midweek collapse against Mainz to keep him fresh for the big one. He was robust to say the least in the engine room, and some might say lucky to only receive yellow for a lunge on Henrikh Mkhitaryan. His audacious shot from inside his own half had Burki worried late in the second half. Went down with cramp in the final minute; no wonder -- he had 125 touches more than any other player on the pitch.
MF Arturo Vidal, 9 -- Much improved. The Chilean looks reinvigorated after the winter break. Could so easily have been the match-winner but Burki somehow tipped his rasping snapshot onto the bar just after the hour mark. Looks ready for the second leg against the "Old Lady."
MF Douglas Costa, 5 -- Highly culpable for missing Bayern's golden chance of the match. Costa was sent clean through on goal just before the half hour mark. Costa must score, having ample time to round the goalkeeper but instead fired straight at that man Burki. Unlike Vidal, Costa hasn't been the same player since the winter break. With Franck Ribery back in the fold, Costa may have to cope with a spell on the bench in coming weeks.
MF Arjen Robben, 6 -- Vibrant and a real threat going forward but the Dutchman also missed a host of chances. The trademark Robben goal cutting in was there for the taking, all on his stronger left foot, but he failed to find the target.
FW Thomas Muller, 6 -- Predictably restored to the starting lineup after languishing on the bench for 50 minutes against Mainz. A typically industrious display but Muller, too, was profligate in front of goal. Muller set the tone after only five minutes, blazing high and wide into the "Yellow Wall" when he really should have put his side ahead.
FW Robert Lewandowski, 6 -- Excellently marshalled by Mats Hummels and co. with just one tame shot on goal. One small consolation: he's still the league's top scorer with 23 goals, after Aubameyang also failed to score.
MF Franck Ribery, NR -- The 32-year-old Frenchman replaced the ineffective Costa for the final 15 minutes, enjoying another lively cameo as a substitute as he battles his way back to full fitness.
DF Medhi Benatia, NR -- Replaced the ailing Alonso for the final minutes from the bench after tasting defeat in his first start of 2016 against Mainz.
Mark Lovell is a Germany-based journalist who covers the Bundesliga for ESPN FC and BBC Sport. Twitter: @LovellLowdown.