Five days ago, Sen. Bob Corker calmly looked into the cameras of local Tennessee news stations and stated that he had doubts about President Donald Trump’s stability.

It was a shocking assessment and not just because Corker is not a man known for hyperbole. These types of things aren’t said about presidents; certainly not in the open. But it was said by Corker, and for the fairly clear purpose of putting Trump on notice that Senate Republicans were running out of patience with his presidency.

On Tuesday night, Donald Trump did little to earn back more patience. Those, like Corker, who were hoping that the president would suddenly discover a more conciliatory side were likely left severely disappointed by a rally that was equal parts angry, combative, rambling, and foreboding.

To say Trump was in campaign mode would probably be to overstate how he was on the previous campaign. Speaking in Phoenix, he viciously attacked the news media, left-wing protesters, and members of his own party whom he blames for the stalling of his legislative agenda.

At one point, he went on a 25-minute rant against the press, with multiple gestures toward the pen at the back of the Convention Center. He blamed them for misrepresenting his remarks on the terrorist attack in Charlottesville, Virginia, last weekend. And then, when reading from printed copies of those remarks, he misquoted himself, conveniently failing to mention that he had blamed “both sides” for the atrocities.

When not reading off the teleprompter, Trump appeared angry. He threatened to shut down the government if he didn’t get funding for his famed border wall. He blamed the filibuster for stalling much of his agenda, even as he claimed to have passed more bills than any president since Harry Truman. And he went after congressional Republicans for being insufficiently obedient, even as his relationship with GOP leadership reaches new nadirs.

“Mitch is not going to be happy,” a senior Trump official conceded to The Daily Beast late Tuesday evening, referring to Senate Majority Leader Mitch McConnell. “He probably wasn’t expecting an hour of tax reform. But couldn’t have expected a shutdown threat either.”

Republican operatives who watched Trump’s speech expressed shock at the spectacle. Rick Wilson, a vocal, often acerbic critic, called it “absolutely bat crap crazy” on CNN. Others deemed the president a “madman.”

But Trump’s base, fresh off a frustrating Monday evening that saw the president back a more hawkish—or “globalist”—Afghanistan policy, was thrilled at his willingness to embrace the red-meat elements of his platform at the expense of establishment Republicans.

Steve Bannon, the recently ousted White House chief strategist, was ecstatic with Trump’s performance Tuesday, according to two sources at Breitbart News, the pro-Trump website that Bannon chaired before joining the White House, and to which he returned after his departure last week.

“Globalists can only make Trump pivot so much,” one Breitbart editor told The Daily Beast.

As he heads into a thicket of major legislative battles this fall, however, Trump needs Republican elected officials more than Breitbart readers or Republican cable-news pundits to rally to his side. Chief among them is McConnell, who controls the Senate floor and who has not spoken with the president in weeks, according to a Tuesday report from The New York Times that described in detail the increasing hostility between the two men.

Trump could have used his Tuesday address to patch things up with the majority leader. Instead, he likely inflamed tensions by lending his weight to efforts to pick off a vulnerable member of McConnell’s caucus, Arizona Sen. Jeff Flake, an outspoken Trump critic. “Nobody wants me to talk about your other senator, who’s weak on borders, weak on crime,” Trump said of Flake at one point, without naming him.

Leading up to the speech, administration officials had felt nervous anticipation over the possibility that Trump would veer from prepared remarks onto one of the many tangents that frequently color his campaign speeches. “We are no more terrified going in than we are the other six days out of the week,” a senior White House official told The Daily Beast on Tuesday afternoon.

Administration officials had hoped Trump would “stick to his teleprompter,” as one senior aide put it, albeit while recognizing that “it’s like roulette with him.” By the evening, those fears proved valid. During the speech, Trump suggested that he will pardon former Maricopa County Sheriff Joe Arpaio at some unknown later date.

The comments flatly contradicted those of White House press secretary Sarah Sanders, who told reporters Tuesday: “There will be no discussion of [an Arpaio pardon] today at any point.” They also ignored the advice of top administration officials, including White House Chief of Staff John Kelly, who, according to multiple senior aides, encouraged Trump not to make Arpaio a central focus of the rally for fear of attracting unnecessary controversy.

During his speech, Trump hinted that he’d been told to avoid the topic. “I won’t do it tonight because I don't want to cause any controversy,” he said of a potential Arpaio pardon. But, as is often the case, he couldn’t help himself. Arpaio, he assured the crowd, is “going to be just fine.”