Atletico Madrid fought back to secure a remarkable Champions League win over Bayer Leverkusen despite playing with 10 men for 65 minutes.
Former Manchester City forward Julian Alvarez scored twice, including a 90th-minute winner, to take Atletico third in the table.
That did not look on the cards when the hosts had a player sent off after only 25 minutes when Pablo Barrios' sliding challenge caught the back of Nordi Mukiele's leg.
Italian referee Davide Massa was advised by the video assistant referee to watch the incident on a pitchside monitor and then showed the red card to the midfielder.
Leverkusen took advantage as Piero Hincapie headed in from Mukiele's cross in first half injury time and the Bundesliga side were on course to move up to second in the Champions League table.
In a bad-tempered match, the reigning German champions, second in the Bundesliga, were then outplayed by the hosts in a remarkable second half.
Alvarez made it 1-1 in the 53rd minute, finishing off a counter attack and holding off two Leverkusen players before shooting past Matej Kovar.
At an intimidating Estadio Metropolitano, Atletico thought Florian Wirtz should have been sent off for fouling Alvarez when he was on a yellow card, with manager Diego Simeone leading the calls for the player to be dismissed.
But a naive Leverkusen side continued to lose their composure and were then reduced to 10 themselves with Hincapie shown a second yellow card for a foul on Giuliano Simeone.
At 10-a-side, Atletico then had the last laugh as Alvarez took the ball around Kovar to snatch an incredible winner and spark jubilant celebrations.
Atletico are third with Leverkusen sixth, with both sides hoping to finish in the top eight and jump straight into the last 16 and avoid the play-offs.