Thousands of protesters carrying effigies of Donald Trump marched through Brussels on Wednesday after the US president arrived for talks with the EU and NATO.
"Trump not welcome" said banners waved by the crowd, which police said numbered around 9,000. Organisers put the size of the demonstration at 12,000.
"He called Brussels a hellhole and yet he comes here like a conqueror," leftwing protester Yannick Blaise told AFP.
Trump sparked fury by deriding the Belgian capital as a "hellhole" ruined by Muslim immigration in January 2016 -- two months before suicide bombers killed 32 people in the city.
The rally filled the central Bourse square of the city just hours after Trump touched down in Air Force One for high-stakes talks with allies.
Trump met Belgium's King Philippe and Queen Mathilde, then held talks with Prime Minister Charles Michel, telling him that fighting terrorism was a priority.
Security was tight throughout the city but the protest passed off peacefully.
Some wore t-shirts saying "Make Humanity Great Again" and "Donald Back to USSR" -- referring to a probe into allegations of collusion between the Trump campaign and Russia.
Many carried blond-haired effigies of the US president, and there were also some of Michel.