The visitors raced out of the starting blocks as Jakub Blaszczykowski stung the palms of Ron-Robert Zieler from range within the first minute.

However, after that Hannover settled down and were passing the ball confidently, Jimmy Briand had a couple of shots at goal that were not too much bother for Roman Weidenfeller.

It was Jürgen Klopp’s side who took the lead though after an excellent counter attack, that saw Marco Reus feed Aubameyang in who finished well to open the scoring.

The 96ers responded and equalised just after the half hour mark when former Borussia Dortmund midfielder Bittencourt cut the ball back to captain Lars Stindl who slotted the ball home from around 12 yards out. Marcelo then headed just over as the hosts took the game to their guests.

After the break, the game was completely changed in the space of five dramatic minutes. First of all, Mats Hummels did brilliantly to clear a goal-bound header off the line before Bittencourt received his second yellow card just six minutes after receiving his first. Dortmund took advantage straight away as Blaszczykowski  played an acute through ball to Reus who calmly squared it to Kagawa for an easy finish.

The Japanese midfielder then turned provider shortly after, crossing for Aubameyang to make it 3-1 with a diving header with 29 minutes left.

Sokratis Papastathopoulos had a shot saved by Zieler’s feet in a rare foray forward for the makeshift left-back.

The German keeper saved acrobatically with his legs again to tip Reus’ one-on-one opportunity onto the post.

Zieler’s exploits paid off as the home side went up the other end and halved the deficit. Stindl curled the ball brilliantly past Weidenfeller from outside the box with less than 10 minutes remaining.

Dortmund held on for all three points though and remain 10th, while H96 can take positives from the performance they still sit perilously close to the relegation places.