Bayern Munich have extended their advantage at the top of the Bundesliga to 11 points after coming from behind to beat Hannover 3-1.
Hannover made a promising start to the match as Christian Schulz headed just over the crossbar, while Ron-Robert Zieler was forced into an early save when David Alaba targeted the top corner with a powerful free kick.
Tayfun Korkut continued to look threatening for much of the first half, with Jimmy Briand somehow managing to send a header over after being gifted space inside the box.
However, Hannover took their next opportunity as Briand cut inside from the wing to find Hiroshi Kiyotake, who shrugged off a challenge from Dante before slotting the ball past Manuel Neuer.
Their celebrations lasted less than three minutes as Xabi Alonso found the equaliser by curling a free kick over the wall to leave Zieler helpless.
Bayern could have taken the lead before the break, but Arjen Robben could only fire just wide of the target from Juan Bernat's cross.
Roberto Lewandowski, who was sent on as a first-half substitute for Dante, found the space to meet a Rafinha cross early in the second half, but his attempt drifted a few inches wide.
Bayern continued to apply the pressure and were gifted the chance to go ahead when Marcelo was adjudged to have caught Lewandowski as the Polish striker attempted to get his head to Franck Ribery's delivery.
Thomas Muller took on the responsibility from 12 yards and the World Cup winner made no mistake as he fired his penalty past Zieler.
Ribery's introduction in the second half played a key role for the champions, and the Frenchman was involved again for the third goal as he delivered a cross for Muller, who headed home to wrap up the win.