Metz: 61. Sy - 2. Colin (Mbala, 63), 4. Mboula M. (Munongo, 63), 38. Sané S., 39. Kouao - 5. Gbamin - 20. Deminguet (Abuashvili, 87), 70. Sarr Bo. (Michal, 80) - 10. Hein - 7. Tsitaishvili, 30. Diallo H.
Substitution: Munongo (from 63); Mbala (from 63); Michal (from 80); Abuashvili (from 87)
Bench: 1. Fischer J. - 15. Yegbe, 97. Ballo-Touré - 11. Kvilitaia
Yellow Cards: Sarr Bo. 38; Munongo 72
Nantes: 1. Anthony L. - 3. Cozza, 6. Awaziem, 10. Abline (Guirassy B., 73), 18. Centonze (Youssef, 46), 24. Guilbert, 78. Tati (till 39) - 8. Lepenant - 13. Coquelin (Sissoko I., 84), 21. Kaba M. (Amian, 90) - 37. Ganago (Machado D., 46)
Substitution: Youssef (from 46); Machado D. (from 46); Guirassy B. (from 73); Sissoko I. (from 84); Amian (from 90)
Bench: 30. Carlgren - 20. Cabella - 19. El Arabi, 31. Mostafa Mohamed
Yellow Cards: Coquelin 63
Red cards: Tati 39'
Paris Saint-Germain were made to work hard on the road but ultimately did enough to secure a narrow victory

The hosts—despite a summer riddled with high-profile departures and off-pitch controversies—looked sharp, unified, and ruthless

The 22-year-old Ukrainian defender slotted into the starting XI and played the full 90 minutes

Paris Saint-Germain travelled to face struggling Nantes in Matchday 30

Metz
Nantes