Algeria will face Senegal in the final of the Africa Cup of Nations.
Riyad Mahrez scored a stunning free-kick in stoppage-time, whipping the ball into the top-corner, to give the Algerians a 2-1 win over Nigeria in Cairo.
It came after Senegal beat Tunisia 1-0 after extra-time, with Dylan Bronn scoring an own goal after goalkeeper Mouez Hassen tipped the ball onto his head.
Both teams had penalties saved in normal time, while Tunisia had a late spot-kick decision overturned by VAR.
Senegal and Algeria will meet in the final on Friday, with kick-off at 23:00 UAE time.