An enthusiastic Polish crowd chanted President Donald Trump's name and "USA, USA, USA" as the American president gave a valentine of a speech in Warsaw's Krasinski Square by a memorial to the 1944 Polish Uprising.
In a half hour, Trump essentially wrapped America in Polish history and likened the Poles' resistance to the Nazis -- most dramatically in a 63-day pitched battle that left more than 150,000 Poles dead and Warsaw a ruin -- to America's and the West's fight against radical Islamist terrorism.
"The fundamental question of our time is whether the West has the will to survive," Trump told the crowded square.
Trump also used the occasion to urge Russia "to cease its destabilizing activities in Ukraine and elsewhere, and its support for hostile regimes -- including Syria and Iran -- and to instead join the community of responsible nations in our fight against common enemies and in defense of civilization itself."
The president delivered an expected slap toward NATO nations that, unlike Poland, have missed the benchmark of spending more than 2 percent of their gross domestic product on defense. However, that criticism was balanced with an unsolicited embrace of Article 5, NATO's mutual-defense clause, which Trump failed to endorse during his first trip to Europe in May.
Crowds waving U.S. and Polish flags gathered in and around the Warsaw square to hear Trump speak. "America loves Poland, and America loves the Polish people," Trump said. The crowd returned the love.
It was a far different scene later in the day when Trump arrived in Hamburg, Germany, where columns of police tried to keep order as waves of protesters -- some demonstrating their intent to commit violence by wearing black masks -- hit the streets. Authorities expect as many as 100,000 protesters at the Group of 20 Summit, a two-day gathering of the world's top economic powers.
German police used water cannons, pepper spray and batons to disperse marchers after some attacked them with bottles and other objects.
German Chancellor Angela Merkel, whose country is hosting the G-20 Summit, has made clear her differences with Trump on climate change, refugees and trade. "We are not going to paper over the differences but rather, we will call discord discord," Merkel said last month.
Trump met with Merkel after arriving in Hamburg. The pair shook hands and spoke briefly while looking directly at each other. They then left for closed-door discussions.
The German government said Merkel and Trump discussed issues including North Korea, the situation in the Middle East and the conflict in eastern Ukraine.
Trump is scheduled to meet face-to-face Friday with Russian President Vladimir Putin. A number of high-ranking Democrats in Washington on Thursday demanded that Trump confront Putin over Moscow's meddling in the 2016 election, but Trump has refused to say if he will raise the issue.
Before his Warsaw address, Trump held a joint press conference with Polish President Andrzej Duda. It was the first time he took press questions overseas.
During the press conference, Trump declined to definitively declare that Russia tried to interfere with the 2016 presidential election. "I think it was Russia," he said, but added that other countries also may have been involved.
Trump used the question to slam former President Barack Obama for failing to do more to combat foreign meddling when he was informed of it in August.
Trump reminded the room that the intelligence community is not infallible, and harkened back to the intelligence community's near certainty under President George W. Bush that Iraq had weapons of mass destruction.
"Everybody was 100 percent sure," Trump recalled. "Guess what? They were wrong."
Trump also used the occasion to again call CNN "fake news" and to chastise NBC for being almost as bad -- even though his reality TV show, "The Apprentice," made the network so much money.
Trump then looked to Duda and asked if the Polish president had to deal with the same sort of media coverage. Duda appeared quite sympathetic.
The "fake news" detour began when Daily Mail reporter David Martosko asked Trump about the fallout from a controversial tweet the president had sent that showed him wrestling with a man whose head had been replaced with a CNN logo.
Martosko then asked Duda about his Law and Justice Party's attempts to clamp down on press freedoms by "limiting who can cover the parliament." (Last year the Law and Justice Party made such a proposal, but Duda abandoned the plan after public protests.)
Duda's answer could have come straight from Trump's "fake news" playbook. The Polish president accused a Polish TV station of not covering his visit to Croatia, "because this broadcaster does not like me as the president of Poland."