Mexico survived a stunning Senegal comeback today as they won a Wembley thriller to reach their first Olympic semi-final since 1968.
The Mexicans blew a two-goal lead with just over 20 minutes remaining of this afternoon's London 2012 quarter-final, but Tottenham misfit Giovani dos Santos and substitute Hector Herrera punished horrible extra-time errors to set up a clash with Japan and a guaranteed medal match.
Poor defending also saw Mexico go 2-0 ahead through Jorge Enriquez and Javier Aquino before Senegal scored twice in seven minutes to equalise through Moussa Konate's fifth goal of the tournament and a header from substitute Ibrahima Balde.
The Africans, who finished runners-up to Great Britain in Group A, also wasted a succession of chances in what was indisputably the match of the tournament so far.
Despite being denied the chance to see a match involving the home nation, 81,855 people packed into Wembley, with some of them actively choosing to support one or other of the teams.
Those donning sombreros and fake moustaches were almost given something to celebrate in the third minute whe Marco Fabian curled a beautiful strike against the crossbar after Konate was caught napping.
But it took only another seven minutes for Mexico to score, Dos Santos whipping in an inswinging free-kick from the right and Enriquez getting in front of everybody to glance a back-header into the far corner of the net.
Konate - who has been linked with West Ham - saw his price tag drop a few pounds when he fluffed an absolute sitter after Mexico failed to clear a corner.
Mexican goalkeeper Jose Corona produced two excellent saves to preserve his country's lead and Oribe Peralta should have sent them into half-time 2-0 up when he somehow nodded Fabian's cross wide.
Dos Santos then poked tamely at Ousmane Mane before Mexico doubled their lead in the 63rd minute.
Fabian punished more dithering in the area with a tackle that set up Peralta, whose shot was saved by Mane only for Aquino to knock in the rebound.
Corona had already kept out a Pape Souare header from point-blank range, with Sadio Mane seeing his rebound effort blocked and two further quickfire chances go begging.
Konate also hooked Souare's cross straight at Corona before finally pulling a goal back via the same combination, powering a 69th-minute header home.
Sadio Mane's diving effort then went wide but Balde made no mistake in the 76th minute when he looped a header from Souare's corner into the net for a dramatic equaliser.
Souare earned a booking that would have ruled him out of any semi-final after his studs caught Herrera full in the face and Peralta missed a chance to win it in the third minute of stoppage-time when he powered over a header.
Ousmane Mane got a foot to Fabian's finish early in extra-time but could do nothing in the 98th minute when Papa Gueye dwelt on the ball and Dos Santos stole in to clip it home.
Senegal missed two chances to level again before pressing the self-destruct button in the 109th minute when Abdoulaye Ba's header back to his keeper was underhit and Peralta and Herrera combined to ensure a tap-in.