The US Congress has passed a long-awaited $900bn (£660bn) package of coronavirus pandemic aid after months of political wrangling.
Senators approved the bill late on Monday, hours after it was passed by the House of Representatives.
The aid includes direct payments for many Americans and support for businesses and unemployment programmes.
The money is to accompany a bigger, $1.4tn spending bill to fund government operations over the next nine months.
President Donald Trump is expected to sign the package into law quickly.
President-elect Joe Biden welcomed the relief package but said Congress needed to get to work to support his Covid-19 relief plan in the new year.
In the House, the bill passed by a vote of 359 to 53 and in the Senate it passed by 92-6.
Many Covid-19 relief programmes were set to expire at the end of the month and about 12 million Americans were at risk of losing access to unemployment benefits.
But some lawmakers said they felt blind-sided by being asked to vote on a mammoth bill without even having a chance to read it.
At nearly 5,600 pages, the legislation was described by the Associated Press news agency as “the longest bill in memory and probably ever”.
The stimulus includes one-off $600 payments to most Americans, and will boost unemployment payments by $300 per week, extending expiration dates for the jobless programmes until the spring.
It also contains more than $300bn in support for businesses, and money for vaccine distribution, schools and tenants facing eviction.
The package includes an extension of an eviction moratorium that was due to expire at the end of this month, leaving tens of millions of Americans at risk of being thrown out of their homes. It contains $25bn in rental aid.
The bill also has a provision to end surprise medical billing – where hospital patients get slapped with fees because they were treated by a doctor who was not covered by their health insurer. President Trump has championed calls to end these stealth fees, which are one of the most unpopular pitfalls of the US healthcare system.
The deal was announced on Sunday by Senate Majority Leader Mitch McConnell, a Republican. Speaking on Monday ahead of the vote, he said: “None of us think this legislation is perfect, but a big bipartisan majority of us recognise the incredible amount of good it will do when we send it to the president’s desk. The American people have waited long enough.”
House Speaker Nancy Pelosi and Senate Minority Leader Chuck Schumer, both Democrats, said the package delivered “urgently needed funds to save the lives and livelihoods of the American people as the virus accelerates”.
Lawmakers said the bill would send $600 per adult or child for individuals earning up to $75,000 or married couples earning up to $150,000, with families earning more receiving less.
The first cheques could arrive as soon as next week, Treasury Secretary Steven Mnuchin said.
The payment is half the amount that Congress approved for direct payments during the first round of pandemic relief last spring.
The bill does not include substantial aid to local governments, which had been a top priority for many Democrats. In exchange, Republicans agreed to accept a deal without legal protections for businesses from Covid-related lawsuits.
Mr Schumer said the package would “establish a floor, not a ceiling, for coronavirus relief in 2021”, and that Democrats would push for more aid after President-elect Joe Biden took office on 20 January.
Congress had been expected to pass the bill by Friday, but negotiations continued through the weekend.
The delays led to concerns over whether the government would shut down without a spending bill. Washington has been operating on temporary funding since October, the start of the federal government’s financial year.
Economic analysts welcomed the deal, but have warned that it is probably too small and arrives too late to avert a slowdown in the recovery.
They have also expressed concerns that money devoted to the stimulus cheques – which some families are likely to save – takes away from other, more targeted programmes that might provide a more effective boost to the economy.
“Any Covid relief bill is better than no Covid relief bill, but the measures set to be passed by Congress… do not represent the most efficient use of the $900bn total cost,” wrote Ian Shepherdson of Pantheon Macroeconomics.
However, on social media, many said the cheque should have been larger, saying $600 per person wasn’t large enough to help meaningfully.
“$600 will hopefully save some lives but we all know it’s just barely scraping by,” wrote one social media user in California.