Antoine Griezmann scored twice in four minutes as France came from behind to beat Republic of Ireland 2-1 and reach the quarter-finals of Euro 2016.
Ireland made a perfect start in Lyon as Robbie Brady converted a penalty in just the second minute after Paul Pogba's clumsy foul on Shane Long.
It took France until the second half to respond, with Griezmann heading in an equaliser in the 57th minute and scoring again shortly afterwards to put the hosts ahead.
Shane Duffy was then shown a straight red card for a last-ditch foul on Griezmann and France held on to book a quarter-final against either England or Iceland on July 3.
Neither N'Golo Kante nor Adil Rami will be available for that tie after picking up bookings against Ireland.
But for a while it did not look like that would matter as Martin O'Neill's side led for most of the first half, with goalkeeper Darren Randolph rarely troubled.
Having named an unchanged team to the one that beat Italy to qualify for the last 16, Ireland took the lead after two minutes, with Brady firing a penalty in off the inside of the post after Pogba fouled Long.
France pressed for a quick response as Griezmann headed over the bar from Pogba's cross.
But it was Ireland who went closest as France looked unconvincing at the back from a throw-in and Daryl Murphy hit a volley across goal that Hugo Lloris dived to palm away.
The hosts struggled to mount any sustained pressure and suffered setbacks as both Rami and Kante received bookings that will see them suspended for the quarter-final.
Ireland threatened again as Duffy headed wide from a free-kick, before France finished the half with Dimitri Payet and Griezmann having shots blocked inside the box.
Kante was replaced at the break by Kingsley Coman and the hosts raised the tempo.
Laurent Koscielny headed a good chance wide after a free-kick was flicked to the back post, but Ireland also looked threatening as James McClean's cross was turned away by Lloris.
Randolph then saved from Blaise Matuidi before France got the breakthrough, Griezmann heading home from Bacary Sagna's cross.
Just four minutes later it was 2-1 as both Ireland centre-backs went up to challenge Olivier Giroud for a header, leaving Griezmann space to collect the loose ball and finish past Randolph.
It got worse for Ireland shortly afterwards as Duffy brought down Griezmann on the edge of the box and was shown a straight red card.
From then on it was largely one-way traffic with Andre-Pierre Gignac hitting the bar and missing a couple of decent opportunities to put the game to bed.
The misses did not prove costly as France held out comfortably enough against a tiring Ireland.