Paris Saint-Germain remain on track to smash Ligue 1 records after a late goal from Giovani Lo Celso earned a battling 1-0 win at Bordeaux on Sunday.
Unai Emery's men, already champions of France, booked a place in the Coupe de France final with a midweek victory over Caen that moved them a step closer to a domestic treble, the Coupe de la Ligue having already been won against Monaco.
Various Ligue 1 landmarks are in reach of PSG after the league's runaway winners eventually found a way to break down a stubborn and resilient Bordeaux at Matmut Atlantique.
Gustavo Poyet's side created a series of fine chances, with Malcom dazzling on the right wing, but Alphonse Areola kept out drives from Lukas Lerager and Martin Braithwaite, as well as a close-range Pablo header.
PSG took until the 76th minute to break the deadlock and notch for a 27th Ligue 1 match in succession, Lo Celso - who hit two goals against Monaco in a title-winning victory last weekend - lashing in a low, left-footed drive after a cross was cleared to the edge of the box.
Emery's side will close the campaign with record totals for points and goals – they have 90 and 104 respectively, with the records standing at 96 and 118 – as long as they enjoy a strong end to what has been a successful season domestically, despite continued disappointment in the Champions League.
Bordeaux made a great start but Younousse Sankhare and Jules Kounde failed to hit the target with strikes from outside the box.
PSG responded to that slow opening to the match and Benoit Costil made a fine save low to his right to tip away Lo Celso's 13th-minute cushioned volley.
Bordeaux had won back-to-back Ligue 1 games and continued to threaten, though, with Malcom and Braithwaite denied by Areola, before Francois Kamano headed a great chance wide.
Kylian Mbappe perhaps should have hit the back of the net in the 43rd minute, but when Lo Celso's cute chip gave the forward a chance he rushed the finish and blasted over.
Cavani was seeking the goal to overtake Zlatan Ibrahimovic as PSG's highest-scoring player in Ligue 1, but when he side-footed home a Javier Pastore cross the offside flag was raised.
Chances continued to flow for the hosts, however, and Malcom ought to have hit the target when the ball came out to him on the edge of the box, the Brazilian winger clearing the crossbar.
Lerager's strike was then beaten away by Areola, who also smothered a shot from Maxime Poundje and had to react brilliantly to parry a header from Pablo.
And all those Areola saves proved to be pivotal, allowing PSG to raid down the other end and snatch all three points, arguably undeservedly.
Bordeaux failed to clear a corner properly and the ball sat up perfectly for Lo Celso to rifle a drive past captain Costil.
Bordeaux threatened to claim the point their performance warranted, but PSG kept them at bay and Yuri Berchiche made a crucial block in the third minute of added time to keep Kounde out.
Key Opta stats:
- PSG have already surpassed their record of goals scored in a Ligue 1 season, with 104. Their previous record was 102 in 2015-16.
- Giovani Lo Celso has scored three goals in his last two games in Ligue 1, after scoring only once in his first 32.
- Alphonse Areola made eight saves against Bordeaux, his best tally in Ligue 1 and the best performance by a PSG goalkeeper in the top flight since Salvatore Sirigu against Saint-Etienne in December 2011 (8).
|Knicks star Enes Kanter frustrated by reduced role|
|Kvitova getting back to her best, says Barty|
|Kvitova revels in first semi of ´second career´|
|Messi´s the best player in every world – Boateng dismisses past Real Madrid comments|
|Thunder frustrations continue against Renegades|
|Alonso vows to clear name in tax fraud case|
|Classy Nadal downs Tiafoe to set up Tsitsipas semi|
|Hoedt leaves Southampton for Celta Vigo on loan|
|Melbourne City 4 Western Sydney Wanderers 3: Hosts edge thriller with two goals in last six minutes|
|Wilder won´t even pick up the phone - Hearn not hopeful of AJ bout|
|Sala was on board missing plane, say French authorities|
|Arsenal´s Bellerin out for season with ACL rupture|
|Gatland waiting on ´concrete´ offers|
|Ronaldo accepts prison sentence and €18.8m fine for tax fraud|
|Tsitsipas: It was vital to back up Federer win|
|Awesome Kvitova ends Barty´s home run in Melbourne|
|CA rejects Thunder appeal for full points in abandoned Heat clash|
|Emiliano Sala: Concerns grow for Cardiff striker after plane goes missing|
|Harden unimpressed with refs in Rockets´ 76ers disappointment|
|Ronaldo arrives for sentencing in tax fraud case|
|Record-breaking evening ´one of those nights´ for Warriors star Thompson|
|Hazard still interested in Real Madrid but won´t rule out Chelsea stay|
|Collins moves past Pavlyuchenkova, into Australian Open semis|
|Kohli makes history with ICC awards sweep|
|Thompson sets NBA record with 10 straight made three-pointers to open game|
|76ers hand Rockets largest loss of season, Harden scores 37 points|
|Tsitsipas overcomes Bautista Agut to continue Aus Open run|
|Barcelona move a ´dream come true´ for Boateng|
|Rams coach McVay on Gurley: I´ve got to get him more opportunities|
|Butler´s sprained wrist not expected to keep him out ´long term´|
|Saints owner Benson will ´aggressively pursue changes in NFL policies´|
|Levante to take Copa case to CAS|
|It can happen – Allegri plays down Ronaldo penalty miss|
|Mavericks´ Doncic becomes second-youngest player to record triple-double|
|Yankees send Sonny Gray to Reds|
|Ashley Cole reunited with Frank Lampard at Derby County|
|Arnold ready to mix things up in 2019 Asian Cup quarter-finals|
|Arum: Joshua desperately needs to fight in the United States|
|South Korea v Bahrain: Bento optimistic of continuing unblemished campaign|
|Bolton Wanderers 0 West Brom 2: Baggies bounce up to third after tennis ball protest|
|Confident Moeen ready to shine for England in the Caribbean|
|Juventus 3 Chievo 0: Allegri´s men cruise despite Ronaldo penalty save|
|Boateng completes shock Barcelona switch|
|United Arab Emirates 3 Kyrgyzstan 2 (after extra time): Khalil penalty sets up Socceroos showdown|
|West Indies add Drakes to new-look coaching team|
|Barcelona is a huge opportunity – Boateng confirms shock move is close|
|Donnarumma wishes Higuain luck ahead of expected Chelsea switch|
|Qatar v Iraq: Katanec anticipating ´huge challenge´ in last 16|
|Nuno hit with FA misconduct charge for pitch celebration|
|Furious Carreno Busta and Zverev bow out, Djokovic marches on|
|#NotMartinFromWakefield – Siewert shows viral sensation the door|
|Djokovic feeling the strain after late-night Medvedev battle|
|Henderson sidelined again ahead of Six Nations|
|Australia 0 Uzbekistan 0 (aet, 4-2 on penalties): Ryan heroics see holders hobble onwards|
|Halep exit leaves four-way fight to be crowned number one at Australian Open|
|Super Bowl-bound Rams set for London return, Chiefs to face Chargers in Mexico|
|Huddersfield appoint Siewert as Wagner´s replacement|
|Genoa 0 AC Milan 2: Borini and Suso step up with Higuain left out|
|McTominay signs new Manchester United contract|
|Pizzi to stand down after Saudi Arabia elimination|
|Boateng closing in on shock Barcelona switch - reports|
|Catalans to defend Challenge Cup after resolving RFL dispute|
|Djokovic wears down Medvedev to reach last eight|
|Mouratoglou: I knew ´loyal´ Serena would not fire me after US Open turmoil|
|Barcelona B defender Wague accuses Ejea fans of racist abuse|
|I felt like I had been hit by a train - Halep upbeat despite losing Serena battle|
|Arsenal confirm Mislintat departure|
|Icardi will renew, 100 per cent - Wanda Nara offers latest Inter assurance|
|Japan 1 Saudi Arabia 0: Four-time winners send Pizzi´s men out|
|A souvlaki maybe named after him, a growing fan base – Tsitsipas creating Melbourne buzz|