Libya are through to the final of the African Nations Championship after they defeated Zimbabwe on penalties.
Zimbabwe had the better of a dire 120 minutes, but they couldn't force the goal that would have earned them a place in Saturday's final.
However, in a dramatic penalty shootout, Libya took advantage of four missed efforts from their opponents to secure a 5-4 success.
Read below to see how the action unfolded at the Free State Stadium.
Hello, and welcome to Sports Mole's coverage of the match between Zimbabwe and Libya in the semi-finals of the African Nations Championship.
After 16 teams began this competition, we are now down to the final four, but few people would have expected that these two teams would be competing for a place in the final.
We are still awaiting the team news from the Free State Stadium in Mangauang, so how about I bring you a rundown on how each team made it through to the semi-finals.
Zimbabwe were drawn in a group alongside the likes of Morocco, Uganda and Burkina Faso. Morocco were the overwhelming favourites to progress, but second place was considered up for grabs. Remarkably, Zimbabwe achieved the impressive statistic of not conceding a goal in their three group games, but they were only able to net one goal up the other end. Five points were enough to secure the runner-up spot, and despite going into their last-eight encounter with Mali as underdogs, they stunned their opponents by recording a 2-1 win.
As for Libya, they finished second in a group containing Ghana and Congo. Four points from their opening two matches gave them an opportunity to qualify for the last eight with a result against Congo, and despite looking down and out with 15 minutes remaining, they fought back to score twice before half time to secure a point that helped them progress. The quarter-final draw pitted them against Gabon, and after drawing 1-1 after 120 minutes, Libya held their nerve to move through to the semi-finals.
The winner of this match will earn the chance to fight for the African Nations Championship trophy against either Nigeria or Ghana. Whoever prevails from the second semi-final will be expected to become champions on Saturday evening, but confidence is sure to be high among the victors of this fixture.
Finally, we have news of today's teams. Full details to follow.
ZIMBABWE XI: Chigova; Chipeta, Zvirekwi, Jaure, Ncube; Phiri, Mahachi, Sadiki, Moyo, Mambare; Sithole
LIBYA XI: Abdaula, Almaghasi, Elhouni, Ghit, Sabbou, Salama, El Trbi, Fetori, Fadel, Elgadi, Ghanudi
The players will be walking onto the pitch at the Free State Stadium any moment now. It's tough to predict the outcome of this match because both teams are unbeaten and look incredibly tight at the back. Extra time looks the most likely outcome, but we shall wait and see.
We are underway in Mangaung.
It's been a fast start from Zimbabwe , who quickly won a free kick in a threatening position. However, while the ball into the penalty threatened Libya's goal, it was well cleared by the defence.
SHOT! That's slightly ambitious from Danny Phiri. Actually, it's very ambitious. The midfielder went for goal from around 35 yards, but the ball bounced before the six-yard are and trickled wide.
SHOT! Ali Sadiki just nearly pulled off a stunning goal for Zimbabwe. He dragged the ball past his marker before unleashing a swerving effort from 25 yards that was tipped over the crossbar by the goalkeeper.
Zimbabwe are continuing to have the majority of possession in Mangaung. Libya haven't come close to registering a shot on goal.
CHANCE! Just as I say that, they miss a clear opportunity to go in front! A ball was whipped to the far post for Mohamed Ghanudi, but he powered his header wide of the post from six yards.
Mohamed Ghanudi tricks his way past a couple of players to earn a free kick for Libya around 20 yards from goal. It's a threatening ball into the middle, but it's headed out for a corner.
Libya are much more competitive in this match than they were for the opening 10 minutes. It's warming up into a decent encounter.
A couple of Zimbabwe are sent sprawling to the floor in quick succession. One of them is back to their feet, but the other appears in some discomfort and requires treatment.
How greedy is that from Elmehdi Elhouni? The Libya player broke with pace from the halfway line with his team having men over. However, rather than play a through ball to his team, he opted to take one touch too many and the move came to an end.
Ever since I mentioned that this was warming up into a decent match, the chances have dried up. I will refrain from getting my hopes up for the remainder of the match.
CHANCE! That was a decent opportunity for Simba Sithole. Milton Ncube played a delightful ball over the top of the Libya defence, but after opting to head first time towards goal, Sithole sent the ball a couple of yards wide of the near post.
Libya goalkeeper Mohamed Abdaula looks in some trouble here. After catching the ball, he immediately kicked it out to receive treatment for what appears to be a back or shoulder injury.
The physio seems to have worked his magic because Abdaula is back on his feet. A couple of supporters have just been shown having a sleep. I don't think it's quite that bad, just yet...
Libya win a corner on the right-hand side, but it's a shocking delivery. Zimbabwe break up the other end and look to have won a corner, but the offside flag is up.
There will be four minutes of added-on time.
There's not a whole lot of urgency from either side to do anything of note before the break. I think that's it's going to be goalless at half time.
HALF TIME: Zimbabwe 0-0 Libya
The referee blows the half-time whistle in Mangaung, and it remains level between Zimbabwe and Libya.
Zimbabwe started and ended the first half in the ascendancy, but it was Libya who had the best opportunity of the half through Mohamed Ghanudi. Nerves aren't necessarily playing a part in this semi-final, but both sides need to attempt to take the initiative when they return for the second half.
The two teams will be making their way back out into the Free State Stadium in a couple of minutes. I wonder if either manager has considered making a change.
Nope, no changes. Zimbabwe get us back underway.
Zimbabwe are laying siege to Libya's goal in the opening stages of the second half, but they can't get a shot away.
And again! If it wasn't for some last-ditch defending, Zimbabwe would surely be ahead.
Some good work from Simba Sithole earns his side a corner, but the ball into the box, like it has been on previous occasions, was abysmal.
Like in the first half, Libya have taken their time to find their feet, but they are slowly establishing themselves now. Elmehdi Elhouni had an opportunity to test the goalkeeper from the left-hand side of the penalty area, but he could only direct his shot into the side-netting.
SHOT! Terrific effort from Milton Ncube, but his 30-yard attempt is well handled by Mohamed Abdaula.
It's getting a bit feisty in Mangaung. A player from either side have been taken out with crude challenges, but they are back on their feet.
This might be a bold prediction - then again, it might not be - but I would be genuinely surprised if this doesn't go to extra time. Most of the shots are coming from 25 yards out.
That said, Zimbabwe are having a lot more joy in attack. They are throwing men forward, but it is leaving them slightly open on the break. Libya's Osama Ghit goes into the referee's notebook after scything down Ali Sadiki.
We have less than 15 minutes remaining in the Free State Stadium. Libya are beginning to sit deep, and look more than happy to take this to extra time.
10 minutes to go. It's as you were. However, Libya have made an attacking change by bringing on Mohamed Mahfud.
CHANCE! Big chance for Zimbabwe. The ball found its way to the right side of the penalty area, and after it was pulled back for Kudakwashe Mahachi, he blazed his left-foot shot over the crossbar from 14 yards. He should have at least hit the target.
It's beginning to peter out a little now. As I suspected earlier, we are surely heading into extra time.
There will be four minutes of added-on time.
The Libya goalkeeper is even running down the clock now. We've got another 30 minutes coming up...
FULL TIME: Zimbabwe 0-0 Libya
Can't someone suggest to the referee that we may as well go straight to penalties? It would save everyone a bit of time.
Zimbabwe get us underway in the first period of extra time.
Some superb play down the right earns Zimbabwe a corner, and although the ball into the box is a lot better than we have previously seen, it's punched clear by the goalkeeper.
BOOKING! The Libya goalkeeper, Mohamed Abdaula, has been booked for time-wasting. I think that tells you everything that you need to know about what Libya want from the next 30 minutes...
CHANCE! George Chigova, you lucky, lucky man. Elmutasem Abushnaf fires an innocous effort across goal, but it goes through the legs of the Zimbabwe goalkeeper. However, it evades the far post.
Kudakwashe Mahachi skies a 30-yard effort for Zimbabwe. It wasn't the worst effort in the world, but it was always rising.
HALF TIME: Zimbabwe 0-0 Libya
We are back underway. Will we get a winning goal, or are we going to penalties. I think you can guess what my prediction is.
Both teams are huffing and puffing, but they can't blow their opponents house down. Eight minutes to go...
A ball is delivered into the penalty area for Simbarashe Sithole, but his header is glanced wide of the post.
Just two minutes to go in Mangaung. This is going to penalties.
FULL TIME: ZIMBABWE 0-0 LIBYA - THE MATCH GOES TO PENALTIES
Zimbabwe 1-0 Libya Zimbabwe score their first penalty through Chipeta.
Zimbabwe 2-1 Libya Both teams score their next penalties. Can Libya level?
Zimbabwe 2-2 Libya Yes they can! great penalty from Ghanudi.
Zimbabwe 2-2 Libya Zimbabwe miss! The ball was fired against the post.
Zimbabwe 2-2 Libya Oh no, what has Mahfud done there! He has attempted to dink the ball into the roof of the net, but it has gone skywards!
Zimbabwe 2-2 Libya The next Zimbabwe taker has done the same! Unbelievable.
Zimbabwe 2-3 Libya Fetori scores for Libya. Zimbabwe must score here, or Libya have won.
Zimbabwe 3-3 Libya Great penalty! Zvirekwi sends the goalkeeper the wrong way.
Zimbabwe 3-3 Libya MISS! The Libya captain, Salama, has the chance to send his team through, but his weak penalty is saved!
Zimbabwe 3-3 Libya Another save! Ncube sees his driven effort saved by the legs of Abdaula.
Zimbabwe 3-3 Libya This is getting silly! Libya miss their second chance to go through to the final!
Zimbabwe 4-3 Libya Jaure rolls the ball into the corner. Libya must score...
Zimbabwe 4-4 Libya Remarkable stuff. The ball is driven into the corner and we are back on level terms.
Zimbabwe 4-4 Libya SAVED! Sadiki sees his spot-kick saved, and Libya have a third chance to win this shootout...
Zimbabwe 4-5 Libya UNBELIEVABLE! Libya win on penalties after their goalkeeper, of all people, scores. Mohamed Abdaula is the hero!
Because of the quick turn-around, that will be all from this game, but please stick around to join us for the Nigeria versus Ghana match which is due to kickoff in 35 minutes time. Goodbye for now.