Hoffenheim and Kaiserslautern met in the first leg of the Bundesliga playoff to determine which side will be in Germany's top division next season.
The hosts took to the Rhein-Neckar Arena having narrowly avoided automatic relegation at the weekend, following a late turnaround to win 2-1 over Borussia Dortmund.
That victory meant that Fortuna Dusseldorf faced an instant drop, and set up this evening's tie with the 2. Bundesliga's third-placed side Kaiserslautern.
Hoffenheim take the initiative into the second leg, after a comfortable win on Thursday night.
Read how it all unfolded in our live commentary below.
That's it from me tonight, I hope you enjoyed the match. Join us again soon.
The return leg at the Fritz-Walter-Stadion takes place on Monday.
After a Firmino double had given the hosts a strong lead at the break, Idrissou got Kaiserslautern back in the match shortly after the half-time interval. However, Schipplock quickly restored the home side's advantage, and that is how it stayed.
We that's it from the Rhein-Neckar Arena, where Hoffenheim have the advantage heading into the second leg.
FULL TIME: Hoffenheim 3-1 Kaiserslautern
YELLOW CARD Beck goes into the book for the hosts after a late challenge on Baumjohann as he tries to halt the attack.
Hoffenheim again just trying to hang on to the ball, Kaiserslautern are desperate for one last attack at goal.
YELLOW CARD Baumjohann, who is offside, chases for a ball with Casteels. The goalkeeper, who has already received treatment once this match, goes down like a sack of spuds, and the Kaiserslautern man picks up a booking.
We have four minutes of time added on.
KAISERSLAUTERN CHANGE The visitors make their third and final change, as the goalscorer Idrissou is brought off and Zellner comes on.
Hoffenheim are just holding onto the ball high up the field at the moment, and look as if they are content with taking a 2-1 lead into the second leg.
HOFFENHEIM CHANGE The home side make another chance as Sule comes on for Salihovic.
Idrissou is irate with linesman on the far side, as he thinks he is one-on-one with Casteels, only for the flag to pop up and deny him a chance.
As soon as I say that, Casteels gets back to his feet. And he looks as if he may be ok to carry on.
The stretcher is out, and this doesn't look good.
There is a stoppage in play as Casteels clashes heads with Vestergaard in the box. The keeper is still down.
KAISERSLAUTERN CHANGE Weiser is the man who is making his way off the field, with Bunjaku taking his place.
CHANCE! Kaiserslautern are becoming desperate. The right-back and captain Dick comes hurtling forward with the ball at his feet. He assesses his options, but chooses to go at it alone, and sends a rocket high and wide from the edge of the box. That would probably explain why he is a defender.
CHANCE! That should have been 4-1! Hoffenheim come breaking forward again, this time down the right, and Salihovic whips in a lovely ball towards the far post. Johnson comes flying in and meets the ball on the diving header, but he gets it all wrong and sends it horribly high over the bar.
Hoffenheim very nearly put the game well beyond Kaiserslautern as a ball is played towards Firmino, but Sippel is quickly off his line to hack away the danger.
The hosts have restored their two-goal lead, and I believe it was Schipplock's first touch. Hoffenheim go surging towards the opposition goal with Firmino, who spots Schipplock on the left. He plays in the unmark substitute, who smashes the ball into the back of the net first time. 3-1.
GOAL! Hoffenheim 3-1 Kaiserslautern (Sven Schipplock)
HOFFENHEIM CHANGE First swap of the match is made as Rudy comes off, with Schipplock coming on.
CHANCE! It's very nearly 2-2 here after a lovely attacking move from Kaiserslautern. Both strikers are involved down the left, and the ball is eventually crossed towards the far post where Borysiuk meets it with a ferocious volley. It takes a deflection, and falls just wide of the far post.
CHANCE! That goal has immediately provoked Hoffenheim into a furious reaction, who really go for it as they try to restore their two-goal lead. They win a corner out on the right, which is curled in towards the penalty spot. The left-back Thesker meets it with a looping header across goal, but it goes just over and lands on top of the netting.
Game on! Kaiserslautern are back in it, as the hosts are caught in possession down the left. Baumjohann slots a lovely ball into the box, where Idrissou gets the right side of Vestergaard, before going beyond Casteels, and slots the ball into the net. 2-1, we have a game on our hands.
GOAL! Hoffenheim 2-1 Kaiserslautern (Mohamadou Idrissou)
CHANCE! Well, it's only a half chance really, as Baumjohann lets the ball roll across him before blasting a ball from the edge of the box on the left. It dips harshly, but is easy for Casteels.
YELLOW CARD Kaiserslautern have enough man enter the book, as Torrejon is alleged to have caught Salihovic late, who rolls around in agony.
CHANCE! Lovely move from Kaiserslautern, who nearly pull a goal back. The ball is wide on the right with Weiser who slides a clever pass into the onrushing Hoffer. He manages to clip the ball across the box, but his strike partner Idrissou just can't stretch quite far enough, and the chance is gone.
YELLOW CARD Sejad Salihovic goes into the book for a high elbow against a Kaiserslautern midfielder as he goes up for a header. It's unintentional and Salihovic is very apologetic.
CHANCE! Early opportunity for Kaiserslautern which sees them end up with a corner. Weiser floats a ball into the box from the right, which is heading for the big Idrissou, but he is sandwiched by Beck and Abraham who conceded the corner.
WE'RE BACK IN ACTION AS THE SECOND HALF BEGINS!
And here are Hoffenheim, who lead by two goals, I imagine that Markus Gisdol had a pretty easy talk.
Kaiserslautern have made their way back out onto the pitch, I wonder what manager Franco Foda had to say in the dressing room at the break.
Roberto Firmino is the man who has scored both goals, both strikers goal, both important ones at that.
Kaiserslautern haven't really had any chances bar an early Hoffer effort, but Casteels in the home goal has had an easy half.
So Hoffenheim already look well on the way to saving their Bundesliga status, and are massively in control of this match.
HALF TIME: Hoffenheim 2-0 Kaiserslautern
It's struck well enough by Firmino, who gets some good dip on it, but Sippel can hold easily.
We've got a minute of added time to go, and Hoffenheim have a free kick in a good position.
CHANCE! Kaiserslautern get a half chance out of nothing but they fail to take it. Hoffenheim look comfortable at the back, and seemed to have dealt with a corner well. They clear the initial danger but the balls finds its way to the far side of the box where an unmarked Hoffer lurks. He opts to meet the ball on the volley, a difficult skill from this position, but he gets it horribly wrong and fires it well over the bar.
Ooooooh Hoffenheim go close again as Johnson piles his way into penalty area. He takes aim and draws his leg back, but just before he can get his shot away, Heintz comes from out of nowhere and slides in to clear the danger. There is a fine margin between making a goal-saving challenge and conceding a penalty, and my word did Heintz get that one right.
Kaiserslautern look desperate to try to get something here, in fear that the tie is getting beyond them. They are running everywhere, while the two-goal lead has presented Hoffenheim with some confidence, as they try out some fancy first-time flicks and tricks.
Hoffenheim extend their lead and it is a lovely goal from the hosts. Firmino brings the ball in from the left before giving it to Polanski. He then plays it wide to Salihovic who feeds in Beck on the overlap. Beck smashes a cross low and hard across the face of the six-yard box where Firmino is on hand for a simple tap in. Liquid football.
GOAL! Hoffenheim 2-0 Kaiserslautern (Roberto Firmino)
Nothing to report in the last few minutes, it's mainly been stoppages after free kicks have been awarded. Every time a man goes down, the crowd roars and the referee's whistle is blown.
The atmosphere in the stadium has cranked up after a few heavy challenges go flying in within the space of a minute.
Kaiserslautern are struggling in the final third at the moment. They have no problem working the ball to the edge of the opposition box, but they can't see, to keep hold of the ball from then on. Idrissou has given the ball away so many times.
Kaiserslautern are creeping back into this game. They have hand a handful of corners already, but are yet to really mount a serious attack from any of them. Hoffer had the best chance for the visitors early on.
CHANCE! Kaiserslautern manage to get a shot at goal, as Idrissou uses his strength to get past Beck down the left. He comes to the edge of the penalty area and tries to shot across goal, but it is an easy hold for Casteels.
Hoffenheim have found their rhythm here, and are knocking the ball about well. Johnson looks dangerous down the left, and Firmino is keen to get involved.
I told you it was a good position. Salihovic whips a low bouncing ball into the box and across the six-yard box where striker Firmino was on hand to add a helping touch, and guide the ball past Sippel and into the back of the net at the near post. Instinctive stuff from the forward, but the defending was...well...there was none.
GOAL! Hoffenheim 1-0 Kaiserslautern (Roberto Firmino)
YELLOW CARD Heintz goes into the book for chopping own Vollard late. Hoffenheim have a free kick in a great position here.
CHANCE! This time it is Hoffenheim's time to have a shot on goal. Salihovic curls a lovely ball from the right to the edge of the box, where Firmino meets it with a volley. But he drills it into the side netting.
Kaiserslautern are really amping up the pressure on the hosts here with a succession of corners, but Casteels is there to punch away several crosses that were chucked into the box. Standing strong so far.
CHANCE! The away side come oh so close to taking the lead. It's an awful lapse in concentration by Vestergaard, which allows Hoffer to steal the ball and come in from the right. He gets to the D and slams a low shot towards the near post, but Casteels in on hand to push the ball past the post. Great save.
It's been a fast start to this match so far, but nothing in the way of chances. Hoffenheim has properly begun the stronger of the two sides, but had an early flowing move cut out by Torrejon.
AND WE'RE OFF!
Hoffenheim are wearing all blue and will be shooting to the left in this first half.
Kaiserslautern, in their all-white kit, will take kick off and shoot from left to right.
The two sides are heading out of the tunnel and onto the field at the Rhein-Neckar Arena.
KAISERSLAUTERN FORM: The second-tier outfit suffered a 2-1 defeat at home to St Pauli on Sunday, but were victorious in the two matches heading into that fixture when seeing off Regensburg 3-1 and thrashing Frankfurt 4-1.
HOFFENHEIM FORM: Hoffenheim come into this match off the back of a big win against Champions League finalists Borussia Dortmund at the Westfalenstadion. However, they endured a 4-1 defeat at home to Hamburg in their previous match after drawing 2-2 at Werder Bremen at the start of the month. Mixed form.
So how do these two teams compare against one another when they have met, which wasn't too long ago seeing as Kaiserslautern were relegated from the top division last year. Well, Hoffenheim will be lifted by the fact that they have won four and drawn two of the six past encounters with Kaiserslautern, including the last time the two sides met at Kaiserslautern, where Hoffenheim emerged 2-1 victors in April 2012.
KAISERSLAUTERN: Sippel, Thick, Torrejon, Leo, Heintz, Baumjohann, Orban, Weiser, Borysiuk, Idrissou, Hoffer
HOFFENHEIM: Casteels, Beck, Abraham, Thesker, Vestergaard, Polanski, Johnson, Salihovic, Rudy, Volland, Firmino
We have 11 minutes until kickoff, so let's get some team news.
However, they could still yet face demotion to 2. Bundesliga as they face Kaiserslautern, who finished third in that division.
Hoffenheim were 13 minutes away from relegation at the weekend, but two late penalties from Sejad Salihovic rescued a 2-1 win for Markus Gisdol's side and therefore relegated Fortuna Dusseldorf.
These two sides meet in the first leg of the Bundesliga playoff where they will battle it out over two games to determine who is playing their football in the top flight next season.
Good evening and welcome to Sports Mole's live commentary from Germany where Hoffenheim host Kaiserslautern at the Rhein-Neckar Arena.