Ukrainian President Volodymyr Zelenskyy visited Washington Thursday to appeal for help fighting Russia, winning warm words of support and weapons from Joe Biden but confronting sceptical Republicans who want to cut off aid.
"We're with you and we're staying with you," Biden told the Ukrainian leader after their top teams met at White House to thrash out Zelenskyy's demands for more arms to push back the Russian invasion.
Wearing his trademark olive green military-style shirt, Zelenskyy said Ukraine "has exactly what our soldiers need" after Biden announced a new package of US military aid, including sophisticated air defence weapons.
But behind the visuals -- firm handshakes across a grand cabinet table and shows of solidarity in the Oval Office -- lay the fact that Zelenskyy's second wartime trip to Washington was far tougher than the first.
Where Zelenskyy received a hero's welcome when he visited in December, this time he spent his closed-door meetings in the US Congress desperately trying to overcome growing war fatigue from Republicans.
Hardline Republicans are threatening to block Democrat Biden's request for a fresh $24 billion aid package for Ukraine, and it has now become caught up in a bitter spending battle that could spark a US government shutdown.
Biden said alongside Zelenskyy that there was "no alternative" to backing the Ukraine funding, adding that he was "counting on the good judgment of the United States Congress".
Speaking later at the National Archives, Zelenskyy said, "I assured President Biden that we in Ukraine will not give up and he assured me that America will be with us, as long as it takes."
The US president said the first US M1 Abrams tanks will arrive in Ukraine "next week", boosting Kyiv's forces as they battle Russian troops in a slow-moving counteroffensive.
The latest US package would also strengthen Ukraine's air defence capability, crucial at a time when the country faces repeated Russian missile and drone attacks.
The Ukrainian leader arrived right after another wave of Russian missile strikes, hitting cities across the country and killing at least three people in Kherson and wounding many in other areas.
Zelenskyy thanked Biden for the "vital assistance provided by the United States to combat Russian terror, really terror".
As part of his bid to win over Washington, Zelenskyy went to the Pentagon where he laid a wreath at a memorial for victims of the September 11, 2001 attacks.
But in a blow to Zelenskyy, Biden rejected for now a request for longer-range ATACMS missiles that can strike up to 300 kilometres (190 miles) away, the White House said.
The key part of Zelenskyy's visit was arguably to a deeply divided Congress.
The hard-right faction dominating the Republican Party is increasingly adamant that the aid spigot should be turned off, with Congress having already approved $100 billion in aid to date, including $43 billion in weaponry.
On Capitol Hill, Zelenskyy got a notably discreet welcome from the Republican Speaker of the House of Representatives, Kevin McCarthy, who is having trouble keeping a lid on internal party squabbling over US spending in Ukraine.
Some Republicans say the money could be better spent on US border security, while there are also concerns about the pace of Kyiv's counteroffensive and that corruption in Ukraine means the money will go to waste.
The doubts are being fuelled by messaging from former president and likely 2024 candidate Donald Trump, who has opposed more funding and frequently expressed admiration for Russia's Vladimir Putin.
It's a trend that has also reached parts of the generally more pro-Ukraine Republicans in the Senate, where Senator Roger Marshall said Congress should not be "sending another blank check to Zelenskyy".
Democratic Senate leader Chuck Schumer, a major supporter of Biden's pro-Ukraine policies, said Zelensky had told him "If we don't get the aid, we will lose the war."
Kyiv is meanwhile trying to shore up international support, with Zelenskyy telling the UN General Assembly in New York this week that the world must stand firm with Ukrainians against Russia's "genocide."
But Zelenskyy played down a row with Poland, saying only that he was "grateful" for Warsaw's support after the Polish prime minister said he would no longer arm Ukraine in a mounting row over grain exports.
The Polish premier later said he had been "misinterpreted."