Congress narrowly passed its budget Thursday, a key step in giving the GOP a green light to pass a tax bill with only Republicans votes.

In other words, Republicans, eager for a legislative win on taxes by the end of the year, are officially at the starting line to aggressively begin negotiations on tax reform.

But there is still a long road ahead. President Donald Trump says he will sign “maybe the biggest tax cut we've ever had,” and top Republicans keep pledging he will do it by Christmas. He has promised he will help the middle class, make the United States more competitive internationally, and bring almost unprecedented economic growth in the years to come. And he’s promised to eliminate the federal debt in eight years while he’s at it.

Satisfying every one of those promises is politically impossible, but even coming anywhere close to it in the next two months will be extremely difficult. Though congressional Republicans are saying tax reform will be “easier” than health care, the party is already embroiled in an intraparty struggle over how deeply to cut rates — and how to pay for them. And despite months of negotiations between top House and Senate Congress members and members of Trump’s administration — a working group dubbed the “Big Six” — Republicans haven’t actually agreed on many important points. And what they have agreed on has already raised some eyebrows within the Republicans conference.

“When you have a very slim majority — three of four senators ... control the destiny of tax reform and [that’s] just unacceptable for the American people,” Rep. Jim Renacci (R-OH), who sits on the tax-focused House Ways and Means and Budget committees, said.

Overcoming these hurdles will be difficult, and the margin of error for Republicans is slim.Here’s a clear guide to what Republicans need to do.

Phase 1: before cutting taxes, Republicans need to pass a budget (Done.)

The most important number for congressional Republicans is 51.

Like their strategy with Obamacare repeal, congressional Republicans are planning to pass their tax plan through a congressional loophole — “budget reconciliation” — which allows Congress to pass bills with a simple majority (51 votes) and bypass the threat of a Democratic filibuster.

To pass anything through budget reconciliation, Republicans needed to pass a budget resolution — a nonbinding agreement that establishes “instructions” for reconciliation bills. These instructions give Republicans a green light to move a tax bill and, depending on how strictly they are written, can also dictate how deeply Republicans can cut tax rates.

Republicans in both the House and Senate have now passed the same budget — narrowly. The reconciliation instructions only mandated savings for one committee: $1 billion from the Natural Resources Committee. It’s rumored this will likely come from a bill to allow drilling in the Arctic National Wildlife Refuge. Notably the budget did not mandate spending cuts to reduce the deficit, instead allowing for a $1.5 trillion increase to the deficit over the next 10 years.

In other words, this budget gives Republicans the freedom to make deep tax cuts without having to pay for them.

The $1.5 trillion deficit increase prompted some to vote against the budget altogether. In the Senate, there was only one holdout, Sen. Rand Paul (R-KY) who opposed the budget resolution because of its impact on the deficit — the budget’s proposal for defense spending was too high, he said.

But in the House there were 20 Republicans who voted against the resolution. Some of these “no” votes were over the deficit, but most were representatives from New York and New Jersey, in a symbolic vote against the state of tax reform negotiations themselves.

Phase 2: overcome key policy disagreements

In late September, Republicans in the House and Senate released a vague framework — which calls for a substantial cut to the corporate tax rate, a huge expansion of the standard deduction, and a collapse of individual tax rates into three tax brackets instead of the current seven. (They have also proposed a possible fourth top tax bracket.) But within that framework, there is a lot Republicans don’t agree on.

The GOP has a general idea to cut tax rates and somehow pay for them by getting rid of deductions, loopholes and benefits. But as Vox’s Andrew Prokop explained, Republicans are having a hard time deciding which loopholes, deductions, and benefits they are willing to do away with.

Already there are signs of Republican defections from the framework alone. Retiring Sen. Bob Corker (R-TN) said he wont vote for anything that will add a "penny" to the deficit (though he left the door open to some rosy economic projections called “dynamic scoring”) and Sen. Rand Paul (R-KY) has signaled he won’t vote for a plan that he thinks hurts the middle class.

But proposed plans to pay for the tax cut aren’t seeing much traction. For example, the state and local tax deduction (SALT), which allows Americans to write off their property and state income taxes, already has Republican members from mostly Democratic states like New York, California, and New Jersey grumbling.

Already a number of Republican representatives from New Jersey and New York voted against the budget for this reason — an early signal of a major debate ahead.

According to the Tax Policy Center, a full repeal of SALT would raise $1.3 trillion in revenue over the next decade — which would go a long way for Republicans who are limited in how much they can blow a hole in the deficit. Now there are rumors of a rolled-back SALT, which might be easier for moderate Republicans to swallow.

And Trump isn’t making any of this easier. He has been relatively incoherent on the specific policy goals of tax reform and instead has set lofty expectations that Congress will likely fail to achieve.

Most recently, reports indicated that Trump grew angry when he learned the tax framework would negatively impact the middle class — a complaint similar to that of his newfound golfing buddy Rand Paul — and allegedly called for some adjustments to the framework.

Phase 3: actually go through regular order — or so they say

Now Republicans have managed to agree on and pass a budget, they have find some consensus, they have to actually write and pass their tax bill. Though technically Republicans have until the end of the next fiscal year — September 30, 2018 — to pass this tax reform with the set of reconciliation instructions set up by the House and Senate budgets, they have said they’re going to get this done by the end of this year.

Rep. Kevin Brady (R-TX), who chairs the tax-writing Ways and Means Committee, said the full Republican tax plan wouldn’t be unveiled until after the House and Senate agreed on a budget, putting more of a squeeze on the calendar. Now, the House says it will release their bill on Nov. 1.

House and Senate leadership has promised that tax reform will go through the full committee treatment, especially after the closed-door process for Obamacare repeal ultimately led some Republicans to vote against the health bill altogether earlier this year.

In the House, this will be the charge of Brady’s Ways and Means Committee, and in the Senate, Orrin Hatch (R-UT) will be the chief tax reform negotiator in the Finance Committee. An open process means long committee meetings to debate and “mark up” any tax reform bill. Expect a lot of amendments. Eventually committees will have to vote on the bills, and then they will go to the full chamber floors.

If the House and Senate end up disagreeing and passing different bills, then they will have to form yet another “conference committee” to negotiate and create a new bill that both the House and the Senate will have to pass again. Or one chamber could simply take the other chamber’s bill and pass it.

Phase 4: get this bill through the Senate’s obscure budget rules — which is the really hard part

At some point after Republicans reconcile their differences and fend off enough outside interests to actually write a bill, the Congressional Budget Office and the Senate parliamentarian are going to have to weigh in on this whole process — a step that could completely derail Republicans’ efforts.

Because Republicans are adamant about driving a partisan-led tax reform effort through budget reconciliation, they are not allowed to increase the deficit outside the first 10-year window, according to Senate rules.

This rule basically leaves Republicans with four options:

They could pass sweeping tax cuts that will sunset after 10 years. This is what former President George W. Bush did with his tax cuts under budget reconciliation in 2001, essentially getting around the deficit restriction by making the tax cuts temporary. Republicans, given all the pressures on this bill, might be forced to do the same. They could pass much smaller tax cuts that are permanent. If Republicans decided that making tax cuts permanent is more of priority than deeply slashing the rates, they could theoretically find enough revenue raisers and offsets to pass permanent — bust substantially smaller — tax cuts. It’s unlikely conservatives will sign up for this. Already House Freedom Caucus Chair Rep. Mark Meadows (R-NC) has drawn a red line at the 20 percent corporate tax rate. Anything above that means it’s likely a lot of conservative members won’t vote for the bill. Technically, Republicans could also split up their tax bill into three separate titles: One would be a temporary Republican-led effort that would pursue aggressive tax cuts and have to sunset in 10 years; a second would be permanent and comply with Senate rules; and the third would be a permanent bipartisan proposal needing 60 votes and likely find consensus around issues like the child tax credit. By going this route, Republicans would be able to split the impact of the deficit between budget reconciliation bills and regular order. Some analysts have also floated the nuclear option, in which McConnell just overrules the Senate parliamentarian. McConnell did not do this in the health care debate, but some have theorized there is more pressure for him to go to extreme lengths this time. Along these lines, the Senate Budget Committee could also use a different, more ideologically conservative score of their tax plan instead of the CBO’s evaluation.

There is also the fifth option: Republicans could just abandon the whole effort. Because they failed so spectacularly on Obamacare repeal, this option is looking unlikely.

In any scenario, they will be relying on projections of increased economic growth from tax cuts to offset the revenue losses from those cuts, known as “dynamic scoring.” But even under the rosiest of projections, growth alone won’t be enough to offset the full losses from the deepest cuts Republicans have proposed. A large contingent of economists — and even some Republicans themselves — have already called these growth projections unrealistic. Many are skeptical whether the Senate Parliamentarian will accept those growth numbers.

The CBO’s score of the bill will play a big role in estimating the effects of this tax package, and how the Senate Parliamentarian, whose role it is to advise whether or not bills adhere to budgetary procedure, will rule.

Already the deficit question is looking like it will be a massive challenge. As I explained above, some of the proposals in the tax reform framework are already showing that they will increase the deficit by trillions of dollars. Changes to the corporate tax rate, for example, would cost more than $4.1 trillion from 2028 to 2037, according to the Tax Policy Center.

It’s all a question of which tricks Republicans will be allowed to sneak through the Senate and how ambitious they plan to be with reforming the tax code. Whichever path they chose, however, there will be roadblocks ahead.