What a weekend! The Premier League's top two, Arsenal and Man City, lost, but the bigger news around City was charges against them of breaching financial rules dating back as far as 2009. We also saw more chaos for Liverpool and Real Madrid, big wins for Barcelona and Bayern Munich, and Napoli get closer to a first Serie A title since 1989-90.

There was also another disappointing PSG performance, but perhaps the best story was Sebastian Haller finally scoring his first goal for Borussia Dortmund.

It's Monday, and Gab Marcotti reacts to the biggest moments in the world of football.

A nightmare 24 hours for Man City: Defeat at Spurs and Premier League FFP charge

On Sunday, Manchester City lost 1-0 away to Tottenham, a result that meant they could not take advantage of league-leading Arsenal's loss to Everton the previous day. More than that, Pep Guardiola made a string of unorthodox choices -- leaving out Kevin De Bruyne, profoundly changing the formation, only sending on Ilkay Gundogan minutes from the end -- and Erling Haaland somehow recorded zero shots on goal and zero touches in the opposition box, a first since his arrival in Manchester.

Guardiola was probably bracing himself for the usual overthinking accusations, which routinely dog him when he changes things up and it doesn't work, when the Premier League announced Monday it was charging the club with more than 100 breaches of financial rules dating back to 2009. If found guilty, they could face a range of punishments, including fines, points deductions and even relegation.

It's been a difficult weekend for Man City, with their defeat at Spurs followed by unprecedented charges by the Premier League. Visionhaus

We'll get to Sunday's performance in a minute, but it's worth remembering that the charges bring to an end a four-year investigation that was prompted by allegations printed in the German magazine Der Spiegel, which published emails and documents obtained by the Portuguese hacker Rui Pinto. (For those unfamiliar with the story, Pinto's "Football Leaks" operation disclosed thousands of documents, including those related to Cristiano Ronaldo and the Kathryn Mayorga case, details of Paul Pogba's transfer to Manchester United and Gareth Bale's salary.)

UEFA focused on the allegations that City's majority owners, the Abu Dhabi United Group, were illegally pumping money into the club using sponsorship deals with related companies. They were fined and banned from European football for two years, only for the Court of Arbitration for Sport to find that some of the allegations were not proved and some were beyond the statute of limitations. (CAS did issue City a record fine for obstructing the investigation.) The Premier League, however, has no statute of limitations, and its investigation had been hanging over the club for four years.

City hadn't been given a chance to clear their name. Now, they do have that chance, which may explain why they say they "welcome the review" and "look forward to this matter being put to rest once and for all."

An independent commission will take the case and because these matters are confidential and they tend not to leak, we'll need to wait for the outcome. You can read the CAS judgement yourself and make your own guesses as to which way this will go -- bearing in mind that, unlike with UEFA's rules, infractions are not time-barred under Premier League regulations.

What is important here is that any outcome needs to be transparent, easy to understand and, above all, credible, both to supporters and to other owners. Especially now that there are two major clubs like Manchester United and Liverpool up for sale, it's critical that the Premier League be seen as an ecosystem where the rule of law prevails. And if City are found not to have violated the rules, it needs to be clear as to why they're not guilty.