Bayer Leverkusen have finally found something to smile about as they reached the German Cup semi-finals thanks to a narrow win over amateurs SpVgg Unterhaching.

Leverkusen lie one point above the relegation zone in the Bundesliga, and their form this season has been in stark contrast to last year’s efforst when they were runners-up in the Bundesliga, the German Cup and the Champions League.

Leverkusen went ahead twice but the game finished 2-2 after 90 minutes, prompting a penalty shoot-out. Leverkusen keeper, Hans-Jorg Butt, was the penalty hero saving against Darlington Omodigbe and then scoring the winning penalty.

In the other ties, Kaiserslautern beat Bochum 4-3 onpenalties after the game finished 2-2 in normal time and 3-3 after extra time. Werder Bremen beat TSV 1860 Munich 4-1 in extra time after they were tied 1-1 after 90 minutes.