Philadelphia City Council adopted its budget Thursday for the next fiscal year, ending a negotiation season full of uncertainty over the financial impact of COVID-19 and debate over police spending amid protests following the killing of George Floyd in Minneapolis.

The $4.8 billion spending plan includes layoffs for 450 employees, tax hikes, and cuts to several city departments, and goes to Mayor Jim Kenney for his signature before the fiscal year begins Wednesday. Kenney last week agreed with Council’s budget tweaks, which included removing a planned $19 million budget increase for the Police Department, and diverting an additional $14 million of expenses from the department to others.

Of the 17 councilmembers, only three voted against it: Kendra Brooks of the Working Families Party and Republicans David Oh and Brian J. O’Neill.

Brooks said she was opposed to a budget that did not significantly reduce police funding.

“I cannot accept a budget that allowed the Philadelphia Police Department to make up 15% of the total operating budget when they have failed to historically make our communities safer,” she said. “Displays of excessive force against protesters, hostility toward journalists, and rallies behind violent vigilante groups has further called into question whether the PPD’s budget is justified.”

Kenney said Thursday that he would sign the budget “as soon as possible,” and thanked Council for reaching an agreement during what he called “the most difficult budget process I have ever experienced.”

Kenney initially proposed a $5.2 billion spending plan in early March that laid out his second-term agenda with new or higher investments in education, street sweeping, and other programs. He revised his plan in May to account for a $649 million budget hole that emerged when the pandemic sent city revenues plunging.

Plans changed again amid protests following Floyd’s death at the hands of Minneapolis officers; protesters and Council members criticized Kenney for his proposed $19 million increase to the police budget while cutting other services. And last week, the administration announced that the city’s budget hole had grown $100 million deeper than initially anticipated.

The budget approved cut that $19 million and transferred oversight of $14 million more by moving crossing guards and public safety enforcement officers into another section of the city’s budget.

Council also restored funding for the African American Museum, restored a $20 million contribution to the housing trust fund that supports affordable housing, and allocated $25 million for health care, antipoverty, and job training initiatives.

The budget includes a nearly 8% reduction in overall spending compared with the plan Kenney proposed before the pandemic, but the $4.8 billion allocated for fiscal year 2021 in spending is equal to the amount allocated two years ago.

Councilmember Allan Domb voted in favor of the budget, but said during Thursday’s meeting that he was “putting the administration on notice” that Council would closely watch city spending, which has increased during Kenney’s years in office.

“We must become the city everyone expects us to be,” he said.

Council also voted to increase the parking tax and the wage tax for nonresident commuters. Planned reductions in the resident wage tax rate will be paused. Oh and O’Neill voted against the wage tax hike and O’Neill voted against the parking tax increase.

Council President Darrell L. Clarke said Council would likely have to reconvene to adjust the budget during the coming year, as the city deals with the financial impact of COVID-19.

And other councilmembers vowed to continue pushing for police reforms and budget changes. Councilmember Jamie Gauthier said protesters’ “efforts are not in vain,” even if they feel disappointed by the budget approved Thursday.

“Institutional racism doesn’t get eradicated by one city budget,” she said. “Achieving true racial justice in our city is going to require difficult conversations and intensive policy change.”