US President Donald Trump has held his first campaign rally since the US coronavirus lockdown began, in front of a smaller than expected crowd.
Mr Trump had boasted earlier this week that almost a million people had requested tickets for the event at Tulsa's Bank of Oklahoma Center.
But the 19,000-seat arena was far from full and plans for him to address an outside "overflow" area were abandoned.
There had been concerns about holding the rally during the pandemic.
Coronavirus was one issue Mr Trump touched on in his wide-ranging, almost two-hour-long speech to cheering supporters in Oklahoma, a Republican heartland.
Mr Trump said he told officials to slow down Covid-19 testing because so many cases were being detected, in remarks later described as a joke.
Those attending the rally had to sign a waiver protecting the Trump campaign from responsibility for any illness. Hours before the event began, officials said six staff members involved in organising the rally had tested positive.
However, it is unclear why attendance was lower than initially anticipated. Mr Trump referred to those in the stadium as "warriors", while blaming the media and protesters for keeping supporters away. There were some volatile scenes outside the venue but no serious trouble was reported.
Mr Trump's re-election campaign event was one of the biggest indoor gatherings held in the US since the country's Covid-19 outbreak began, and came at a time when Oklahoma is seeing a rise in confirmed cases.
More than 2.2 million cases of Covid-19 and 119,000 associated deaths have been reported in the US, according to data from Johns Hopkins University.
What did Trump say?
In his opening remarks, Mr Trump said there had been "very bad people outside, they were doing bad things", but did not elaborate. Black Lives Matter activists were among the counter-protesters to gather outside the venue before the event.
On the coronavirus response, Mr Trump said he had encouraged officials to slow down testing because it led to more cases being discovered. He described testing as a "double-edged sword".
"Here is the bad part: When you do testing to that extent, you are going to find more people, you will find more cases," he told the cheering crowd. "So I said 'slow the testing down'. They test and they test."
The coronavirus, Mr Trump said, had many names, including "Kung Flu", a xenophobic term that appears to be a reference to China, where Covid-19 originated.
Almost 120,000 people have died with Covid-19 in the US since the pandemic began, a number that health experts say could have been much higher had testing not been ramped up. Testing, health officials say, is important to understand where and how widely coronavirus is spreading, and therefore prevent further deaths.
A White House official later said the president was "obviously kidding" about Covid-19 testing.
Taking aim at his Democratic presidential rival, Mr Trump described Joe Biden as "a helpless puppet of the radical left".
The president also struck a combative tone when he touched on anti-racism protests - and the toppling of statues - which began after the killing of an unarmed black man, George Floyd, by police in Minneapolis.
"The unhinged left-wing mob is trying to vandalise our history, desecrate our monuments - our beautiful monuments - tear down our statues and punish, cancel and persecute anyone who does not conform to their demands for absolute and total control. We're not conforming," he told the crowd.
The Trump campaign event in Tulsa had all the colour and character of one of his typical rallies.
The "Make America Great Again" hats, the Hillary Clinton "lock her up" chants, the ear-piercing soundtrack - squint, and it felt like the kind of raucous celebration that powered Trump to the White House in 2016 and buoyed the president through the ups and downs of his presidency.
The only thing missing was the capacity crowd, as vast swathes of blue upper-deck seats remained empty even as Trump entered the stage.
Blame the coronavirus for discouraging people from attending. Blame phantom protesters - as the Trump campaign did in a statement - for blocking access to the rally site. Blame mischievous liberals for flooding the campaign with fake ticket requests, encouraging the campaign to prepare for massive overflow crowds.
Whatever the reason, those massive crowds simply didn't materialise. It wasn't a bad turnout, but when your campaign boasts of more than a million RSVPs, it's an embarrassing look to hit way below that mark.
For a campaign struggling to steady itself amid sagging polls and a public increasingly uneasy about the direction of the nation, the president may have needed more than a comfort-blanket rally that harkens back to better days.
What's the background?
There had been fierce opposition, including a legal challenge rejected by Oklahoma's Supreme Court, against holding the rally during the pandemic on health grounds.
Some feared the rally could become a coronavirus "super spreader" event.
In a Facebook post, Tulsa Mayor GT Bynum acknowledged that Tulsa's residents were divided over it being the first city to host such an event.
"We do this as our positive Covid-19 cases are rising, but while our hospital capacity remains strong. Some think it is great, some think it is reckless. Regardless of where each of us falls on that spectrum, we will go through it as a community," he wrote.
Emotions have also been running high following the killing of an unarmed black man, George Floyd, by police in Minneapolis last month, which sparked widespread anti-racism protests.
Mayor GT Bynum declared on Thursday a curfew covering the area around the BOK Center, citing the risk of "civil unrest". But on Friday, Mr Trump announced that the curfew had been lifted for "our many supporters".
Mr Trump had initially planned to hold the rally on Friday. But he changed the date last week after learning it fell on 19 June, known as Juneteenth, which marks the end of slavery in the US.
The choice of location is also controversial. In 1921, Tulsa was the scene of a massacre in which white mobs attacked black people and businesses, killing an estimated 300 people.
At a peaceful Juneteenth rally in Tulsa on Friday, the civil rights activist Al Sharpton said campaigners could "Make America Great" for everybody for the first time.