Donald Trump denounced Hillary Clinton in harsh, sweeping and personal terms yesterday, a day after she denounced him in similar fashion.

So we now have the first real slugfest of the general election, and the punches thrown—attention, media folks—were mainly about substance.

From Wall Street speeches to the Clinton Foundation, from private email to Benghazi, Trump declared that “Hillary Clinton may be the most corrupt person ever to seek the presidency of the United States.” And: “She’s virtually done nothing right. She’s virtually done nothing good.”

All this is catnip for the media—but it’s our job to dig deeper.

Trump’s disciplined approach in lower Manhattan, reading a scripted speech in a less than bombastic tone, was striking. Perhaps this was the first step in an effort to convince skeptics in his own party, worried about his divisive comments and anemic fundraising, that he can campaign like a mainstream candidate and take the fight to Clinton. The question is whether he’ll sustain it.

But what was equally striking was the marshalling of facts in an attempt to build a negative narrative around Hillary, rather than just hurling insults such as “world-class liar” at her. That is the mirror image of what the Democratic nominee tried in her Columbus speech to do to him.

Trump attempted to stitch together Clinton’s foreign policy record, personal fortune and personal scandals into a mosaic of an untrustworthy person. He portrayed her as being a candidate who defends the special interests who fund her campaigns, while also profiting from those special interests in the form of gargantuan speaking fees to her and her husband.

As an outsider candidate, this is a potentially strong message for him, casting Clinton as the champion of a rigged system who cozies up to the powerful, as Trump himself used to do. But the impact is weakened by the fact that Trump, after largely self-funding his campaign, now finds himself having to raise money from big donors himself.

There were jabs like the one at her “phony landing” in Bosnia – when Clinton falsely claimed to have run from enemy fire as first lady – followed by this: “Brian Williams’ career was destroyed for saying far less.” (Williams, who lost his NBC anchor job for falsely claiming to have been attacked in a chopper in Iraq, was anchoring on MSNBC and had to feel a bit uncomfortable.)

There was over-the-top hyperbole: “In just four years, Secretary Clinton managed to almost single-handedly destabilize the entire Middle East.” What about President Obama? What about George W. Bush, whose Iraq invasion Trump has regularly attacked for causing havoc in the Mideast?

And Trump made Benghazi searingly personal, claiming that Ambassador Chris Stevens “was left helpless to die as Hillary Clinton soundly slept in her bed -- that's right, when the phone rang at 3 o'clock in the morning, she was sleeping.”

A side note: Trump at various points made appeals to Bernie Sanders voters, LGBT people and inner city folks—not the usual approach for a Republican nominee.

It’s clear now that Trump and Clinton plan to pummel each other in an attempt to disqualify each other from the presidency.

But here’s the good news. They are fighting about Clinton’s foreign policy and Trump’s economic policy, about her record at the State Department and his record in the business world. This is a debate far preferable to taunts about sweating and hand size. It will be a test for the media to analyze, report and fact-check these charges and countercharges rather than just treating them as incendiary sound bites.