Rapper Eminem took aim at President Donald Trump at Tuesday night's BET Awards in a vicious, four-and-a-half-minute freestyle.
The star said he "came to stomp" on the president, calling him a "racist 94-year-old grandpa" and accusing him of disrespecting the military.
In the video, the star paces back and forth in a disused Detroit car park, sparring with the camera as he raps.
The a capella track immediately won praise from the hip-hop community.
Snoop Dogg posted a video praising the rapper for taking a stand; Sean Combs, aka Puff Daddy, tweeted that Eminem had "killed it"; while J Cole called the star a "rap God".
T-Pain appeared to voice concern that Eminem, whose real name is Marshall Mathers, had made himself a target by voicing his anger.
It's not the first time Eminem has targeted Mr Trump: A verse in last year's Campaign Speech warned voters the then-presidential candidate was a "loose cannon".
However his latest track, called The Storm, is notable not just for its creative profanity, but also the detail of his criticisms.
The track is even named after the ominous comments Mr Trump made last week while posing for a photograph with military leaders, suggesting their meeting was "the calm before the storm".
Here, Eminem is referencing the escalating tension between the US and North Korea, over the latter's nuclear activities.
President Trump has repeatedly belittled his Korean counterpart, Kim Jong Un, referring to him as "rocket man". Over the weekend, he appeared to reject a diplomatic solution to the situation, tweeting that "only one thing will work!"
Eminem's full verse is: "We better give Obama props/'Cause what we got in office now is a kamikaze/That will probably cause a nuclear holocaust/While the drama pops/And he waits for [expletive] to quiet down/He'll just gas his plane up and fly around/Till the bombing stops."
This section appears to criticise the Republican Party's failure to denounce Donald Trump, especially after his controversial argument that "both sides" were at fault for white supremacist violence in Charlottesville this August.
"Racism's the only thing he's Fantastic 4," raps Eminem, referencing the Marvel comic book series in order to compare Trump to The Thing, because "he's orange".
Eminem lingers for a long time on the president's continued attacks on American Football players, who have been protesting about police brutality by kneeling during the national anthem.
"He gets an enormous reaction/When he attacks the NFL so we focus on that/Instead of talking Puerto Rico or gun reform for Nevada/All these horrible tragedies and he's bored and would rather/Cause a Twitter storm with the Packers," raps the star.
He returns to the theme later, attacking the president's attempts to suppress the protests, and suggesting the racist motivation that black people should "know their place".
"Now, if you're a black athlete/You're a spoiled little brat for trying to use your platform or your stature/To try to give those a voice who don't have one."
Eminem rounds this section off by dedicating The Storm to Colin Kaepernick, the NFL player who initiated the protests. Kaepernick later tweeted his thanks to the rapper.
The president has accused NFL players of disrespecting the military by refusing to kneel in front of the flag, but Eminem references Mr Trump's attacks on Arizona Senator John McCain, who spent five years as a prisoner during the Vietnam War.
In 2015, Trump questioned whether Mr McCain was a war hero, saying: "I like people that weren't captured, OK?"
Eminem's full lyric is: "He says you're spitting in the face of vets who fought for us/Unless you're a POW who's tortured/'Cause to him you're zero 'cause he don't like his war heroes captured."
At the end of the song, Eminem draws "in the sand, a line", telling any Trump supporters they are no longer welcome to be his fans.
"Any fan of mine who's a supporter of his," he spits, "You're either for or against.
"And if you can't decide who you like more and you're split/On who you should stand beside/I'll do it for you with this," he continues, before delivering one of the song's more unprintable lyrics.
The song concludes with the lyrics; "The rest of America stand up/We love our military, and we love our country/But we hate Trump."