President Donald Trump went after journalists during a campaign rally in Phoenix on Tuesday, arguing that the media were “dishonest” in their portrayal of his response to a violent white supremacist protest in Charlottesville, Virginia.

The comments came during a meandering, 77-minute speech in which the president hinted that he would pardon controversial sheriff Joe Arpaio, threatened to pull out of NAFTA, and said he might shut down the government if Congress does not fund a wall on the Mexican border.

“The only thing giving a platform to these hate groups is the media itself and the fake news,” Trump said, accusing the media “of trying to take away the history and our heritage.”

“I really think they don’t like our country. I really believe that,” he added.

Trump reread some of his initial response to the deadly rally, notably omitting the phrase “on many sides,” which he used to describe groups inciting violence in Charlottesville. Trump specifically called out antifa, an anti-facist group of protesters, suggesting his initial response to the violence at the white supremacist protest was directed at them.

He spent more than 10 minutes at the Phoenix rally rereading his three responses to Charlottesville, arguing that “the words were perfect.”

“You know where my heart is,” Trump told the crowd.

He went on to hurl often-repeated criticisms of The New York Times and The Washington Post, and specifically called out ABC’s George Stephanopoulos. He lamented CNN’s firing of Jeffery Lord, a contentious pro-Trump commentator. At one point the crowd began chanting, “CNN sucks.”

Just after claiming his “movement is built on love,” Trump motioned to journalists covering the event and paused while the crowd booed.

“I love all the people of our country,” Trump said.

But he did have praise for Fox News, which he said had “treated me fairly,” and particularly for Fox News host Sean Hannity.

Trump argued he’s better than the journalists who cover him.

“I went to better schools than they did. I was a better student than they were,” Trump said, referring to what he called the “elite” media, whom he referred to as “dishonest” and “bad people.”

The contentious spirit of Trump’s speech was reflected in the atmosphere outside, where thousands of supporters and opponents gathered, separated by police onto opposite sides of the street.

To those who’d gathered to oppose Trump’s rally in the wake of the racially charged violence in Charlottesville, his attacks against the media sounded like a tired talking point.

“I’m not at all surprised that he’d be saying that,” Darryl Griffith, 37, told HuffPost. “It’s his classic go-to line.”

Another protester, disturbed both by the violence in Charlottesville and the president’s reactions to it, felt exasperated that Trump would continue to harp on divisive messages. “I’ll never find myself getting to the point where I’m not shocked anymore,” Terry Reeung told HuffPost. “It has to end. And it will end.”

“I’ll never find myself getting to the point where I’m not shocked anymore. Terry Reeung, Phoenix protester

But some of those who came to cheer Trump on sympathized with his attacks on the press. Daniel Webster, 42, said mainstream media unfairly characterize the 63 million people who voted for the president as “racist.”

Webster noted that he’d volunteered his time to do search missions for undocumented immigrants stranded in the desert. “People can sit around here and call me a racist because of who I voted for,” Webster told HuffPost. “But my search-and-rescue team went out and saved the lives of illegal aliens. You can’t call me a racist when I volunteered my time to save people stranded by smugglers.”

Webster’s friend Keith Dale said that both of them viewed politicians as a generally corrupt class of people who profit off their jobs when they should be motivated by a desire to serve the public. Neither enjoyed watching the hostility between the president’s supporters and opponents.

“As long as we’re fighting each other, we can’t pay attention to them,” Dale told HuffPost, referring to politicians. “They’re smart. It’s a con game. And it works.”