Bayern Munich opened up a seven-point advantage at the top of the Bundesliga thanks to a Thomas Muller hat trick at Eintracht Frankfurt.
Germany international Muller broke the deadlock in what was becoming a frustrating game for Bayern before adding two more in as many second-half minutes.
Xherdan Shaqiri added a fourth late on as Pep Guardiola's men continued their march towards a third straight Bundesliga title.
Frankfurt had clearly done their homework and watched how Borussia Monchengladbach had held Bayern to a 0-0 draw recently as they employed similar tactics.
They frustrated their opponents by preventing them from creating any chances while being quick on the counter whenever they had the chance to break.
It was not until midway through the first half that Bayern finally got a chance to score, and they took it.
Franck Ribery exchanged passes with Robert Lewandowski before setting up Muller, whose first shot was blocked on the line, but he followed up and converted with his knee.
A borderline offside decision denied Muller and Bayern their second when he exchanged passes with Philipp Lahm and tucked the ball in from close range while the linesman's flag was raised.
Manuel Neuer was called into action to make a good save from Alexander Meier's free-kick as Frankfurt started to put Bayern under some pressure.
Frankfurt were certainly not afraid to attack the league leaders and Xabi Alonso retreated into a sweeper position to give his defence even more cover.
That was a sign of how worried Bayern were, but they then emerged to double their lead with Lahm lifting a delightful ball over for Ribery, who fed Muller for a chance he was not going to waste.
Within two minutes, Ribery's throw-in needed just one touch from Mario Gotze to send Muller through on goal again, and he held off his marker well before completing his hat-trick from just inside the penalty area, finishing Frankfurt off.
There was still time for Shaqiri to add a fourth diverting Sebastian Rode's shot past Felix Wiedwald.