The US Congress is to vote on a bipartisan budget deal to avert another government shutdown amid stiff opposition from left and right.
The bill has angered Republican budget hawks, while Democrats are upset about the lack of an immigration concession.
Hours before federal funding expires, the Senate is expected to pass the two-year budget deal, but it faces a tougher test in the lower chamber.
The Republican House of Representatives speaker says he believes it will pass.
“I think we will,” Wisconsin congressman Paul Ryan told radio host Hugh Hewitt.
Congress has to reach a deal before government funding runs out at midnight on Thursday, when a one-month spending bill is set to expire.
Failure to pass a spending agreement led to a three-day government shutdown last month.
What’s in this bill?
White House legislative affairs director Marc Short said the package would increase spending by “just shy” of $300bn (£216bn).
The Washington Post puts the figure at half a trillion dollars.
The bill contains $165bn of additional defence spending and $131bn in domestic spending, including funding for healthcare, infrastructure and tackling the US opioid crisis, reports Reuters news agency.
Officials at the White House say the deal would also increase the debt ceiling until March 2019.
Why are some Democrats unhappy?
Despite the imprimatur of their Senate leader Chuck Schumer, who says the budget accord will “break the long cycle of spending crises”, some Democrats are voicing discontent that the bill does not address immigration.
His House of Representatives equivalent, Nancy Pelosi, said on Thursday morning she was opposed to the bill, but would not order rank-and-file Democrats to vote against it.
She even gave qualified praise to a 650-page spending plan that she herself had a hand in crafting.
“I’m pleased with the product, I’m not pleased with the process,” she said.
The California congresswoman has called for the bill to include a provision shielding so-called Dreamers, young immigrants who entered the US illegally as children, from deportation.
Her remarks came a day after she told the stories of immigrants for eight hours on the floor of the lower chamber.
The 77-year-old set what is thought to be a new record for the longest speech ever made in the House of Representatives.
Obama-era guarantees for those immigrants were cancelled by Mr Trump and are set to expire next month.
On Thursday, the Republican House speaker promised to offer an immigration “solution” once the chamber has passed the budget bill.
But Illinois representative Luis Gutierrez, one of the leading congressional advocates for immigrants, is urging colleagues to reject the spending plan.
“Don’t collude with this administration,” he said. “Vote against the budget.”
Why are some Republicans opposed?
While the spending bill’s splurge for the Pentagon has delighted the national security wing of the party, fiscal conservatives are up in arms about ramifications for the nation’s federal debt.
Ohio congressman Warren Davidson told National Public Radio: “It adds to an awful lot of spending. It’s not compassionate to bankrupt America.”
Mark Meadows, chairman of the conservative House Freedom Caucus, a group of budget hawks, has called the plan “eye-popping and eyebrow-raising”.
Senator Bob Corker of Tennessee said the measure amounts to “doubling down on the irresponsible mentality in Congress of spend-now-pay-later”.
Kentucky Senator Rand Paul said: “I’m against adding over $1 trillion of debt.”
What’s the White House saying?
White House spokeswoman Sarah Sanders praised the Senate bill, saying “we’re certainly happy with the way it’s moving”.
“The budget deal should be a budget deal,” she told a news conference, dismissing Democratic demands that it include a concession on immigration.
The White House endorsement came a day after Mr Trump said he would “love to see” the US government shutdown if there was no deal on immigration and funding for his proposed US-Mexico border wall.
Deficits are already projected to climb because of the Trump administration’s $1.5tn tax cuts, which were approved by Congress in December.