Real Madrid are in danger of a dramatic UEFA Champions League group-stage exit after they fell to a 2-0 away defeat against Shakhtar Donetsk.
If Borussia Monchengladbach defeat Inter later on Wednesday (AEDT), 13-time winners Madrid will not have their Group B fate in their own hands.
Shakhtar defeated Madrid in Spain on matchday one and earned another upset victory courtesy of second-half strikes from substitutes Dentinho and Manor Solomon.
Marco Asensio thought he had given Madrid a fifth-minute lead, only to see his close-range strike hit the post after good work from Karim Benzema down the left had created the opportunity.
The returning Benzema had a shot saved by home goalkeeper Anatolii Trubin, who then produced an excellent stop to deny Asensio after a slick one-two between the Spain international and Martin Odegaard.
Shakhtar lost Junior Moraes when he could not shake off an injury sustained in an incident that saw Raphael Varane booked, as the hosts failed to register a first-half shot on target.
A great move by Madrid after the break led to Benzema creating a chance for Nacho to head over.
But just as it looked like the visitors were in full control, Shakhtar threatened Thibaut Courtois for the first time when Taison surged past Varane and forced the Belgium keeper into a sharp low stop.
And the hosts took a 57th-minute lead when a pass from Viktor Kovalenko caused confusion between Ferland Mendy and Varane, allowing Dentinho to fire in a left-footed finish.
Varane did make a key block to deny Kovalenko and keep Madrid in it, while Trubin thwarted Mendy at the other end.
But another Shakhtar counter-attack settled the contest, with Solomon allowed acres of space as he carried the ball from his own half before drilling a strike beyond Courtois from 18 yards in the 82nd minute.