“They’ve been trying to stop us for the past three years with a lot of crap,” he stated matter-of-factly about his Democratic opponents on Capitol Hill.

It was the same version of Trump that voters saw on Thursday when the president rallied in Minneapolis, the liberal hub of a purple state he hopes to pick up next November. In the company of diehard supporters, prospective Trump voters and Minnesotans who simply came for the show, the president unloaded on Joe Biden over his son’s business dealings in Ukraine and China, claiming at one point that the only reason the former vice president landed a spot on the 2008 ticket was because “he understood how to kiss Barack Obama’s ass.”

Far from the only coarse language in his hour-plus speech, Trump jokingly referred to himself as a “son of a bitch” while imitating an intimate conversation between former FBI agent Peter Strzok and lawyer Lisa Page. And he suggested that his campaign print t-shirts emblazoned with the phrase “Where the hell is he?” in reference to Biden’s son Hunter, who has kept a low profile since the Ukraine scandal first broke.

“The radical Democrats’ policies are crazy. Their politics are corrupt. Their candidates are terrible and they know they can’t win on Election Day, so they’re pursuing an illegal … unconstitutional bullshit impeachment,” he said Friday, repeating a line from his rally the previous evening.

The more Trump focused on Biden, the more he repeated disproved claims about his potential 2020 opponent — mocking him for asking cable news executives and major newspapers not to write about the president’s “conspiracy theories” and accusing the Democratic presidential hopeful of enriching his family while “America got robbed.”

“Sleepy Joe and his friends sold out America,” Trump said Thursday night in Minneapolis as he assured the crowd it’s “much better” when he ditches his prepared remarks.

On Friday, he claimed the media would demand that his own children be jailed if they conducted business like Biden’s son, whom he has repeatedly accused of accepting $1.5 billion from Chinese officials in exchange for pressuring his father to advocate for trade deals with the country.

“Can you imagine if Don Jr. or Eric Trump, or if our beautiful Ivanka … if they walked out with $1.5 billion?” Trump said. “They would be saying, ‘Where’s the nearest cell?’”

The president also went after Sens. Elizabeth Warren (D-Mass.) and Bernie Sanders (I-Vt.), who along with Biden have consistently polled at the top of the 2020 Democratic primary field. Trump mocked Sanders, who recently suffered a heart attack, for sharing a video earlier Friday of him hitting baseballs outside his home in Vermont.

“Bernie was hitting a baseball today to show how strong he was,” Trump said, warning his supporters that if the self-avowed Democratic socialist exits the race, “it looks like those [votes] will go to your radical leftist, Elizabeth Warren.”

“And that will probably, most likely be the end of sleepy Joe,” he added.

Off-script, Trump appeared increasingly aggrieved and ready to exact revenge against Democrats who, in recent weeks, have accused him of abusing his power as president and obstructing congressional investigations into his most controversial actions — including asking the Ukrainian leader to dig up dirt on Biden and his son. In both Louisiana and Minnesota, the president relied on the same fiery language and evidence-free claims he often used against Mueller and his team of “angry Democrats” to attack House Speaker Nancy Pelosi and the growing number of members from her caucus who have publicly endorsed impeachment in recent weeks.

“I’m telling you, Nancy Pelosi hates the United States of America,” Trump told the crowd on Friday, drawing a response of sustained booing.

“All of our nation’s gains are put at risk by a rage-filled Democrat party that has gone completely insane,” he continued. “The Democrats are fighting to restore the wretched political class that … surrendered our sovereignty, flooded our cities with drugs and crimes and bogged us down in one foreign war after another.”

Friday’s rally capped a day filled with more twists in the impeachment drama, as well as several adverse legal rulings for the president and a key departure from his administration.

Marie Yovanovitch, the former ambassador to Ukraine, defied a directive from the administration not to testify about being recalled from her post, and appeared in a marathon session before the three House committees conducting the impeachment inquiry.

One of the two foreign-born associates of the president’s personal attorney Rudy Giuliani who were arrested this week while trying to leave the country was reported to have boasted three years ago about his friendship with Trump, even as the president on Friday said he didn’t know either of them.

And in the courts, Trump lost an appeal to keep his financial records from Democrats investigating him, then suffered setbacks on trying to deny green cards to certain immigrants and reappropriate federal money for the construction of his border wall.

Minutes after arriving in Louisiana, the president also announced via Twitter that acting Homeland Security Secretary Kevin McAleenan would be leaving his position in the coming days after just six months on the job. The outgoing DHS secretary “wants to spend more time with his family and go to the private sector,” Trump wrote.

The president said he would announce a successor to McAleenan in the comings days, noting that this person would also be brought on board in an acting capacity.