Republicans are only a handful of votes short in the party’s latest attempt to repeal the Affordable Care Act. And one of the key “no” votes from July, Sen. John McCain of Arizona, could flip to “yes,” since Arizona Gov. Doug Ducey has endorsed this latest repeal legislation. (McCain has suggested he would be more likely to vote for a Ducey-backed bill.)

But there are not yet 50 Republicans publicly backing the newest Obamacare repeal bill, known as Graham-Cassidy. And the GOP has always been a handful of votes short. Those final few votes are the hardest, and it’s not clear Republicans can get them before Sept. 30, the day of an important deadline that will limit GOP options to repeal Obamacare afterward.

What’s surprising about the potential passage of this legislation is that it is in some ways more conservative than the bill that almost passed in July. Written by Sens. Bill Cassidy (Louisiana), Lindsey Graham (South Carolina), Dean Heller (Nevada) and Ron Johnson (Wisconsin), the legislation — unlike previous Obamacare repeal proposals — gives a lot of power to states to set their own health care policies. Before we get to how likely it is to pass, here are some of its policy highlights (I borrowed from analyses from the website Health Affairs by Washington and Lee University’s Timothy Jost and George Washington University’s Sara Rosenbaum):

Obamacare’s tax revenue — instead of paying for subsidies and tax credits to individuals and extra Medicaid funding — would go toward block grants for each state.

The total amount of money going to states will likely be less than if Obamacare stayed in place, according to an analysis by the left-leaning Center on Budget and Policy Priorities.

In effect, this legislation would take the money that goes to the 31 states that expanded Medicaid under Obamacare and spread it to 50. So California would likely end up with tens of billions of dollars less, but Texas (which did not expand Medicaid) much more.

A state could require everyone to have health insurance and subsidize private insurance targeted at low-income people, like Obamacare. But a conservative state could create a system with few regulations, even allowing insurance companies to set higher prices for people with pre-existing conditions. (Graham-Cassidy only explicitly bars setting higher rates based on gender or race.)

There would be a cap on national spending on Medicaid outside of Obamacare, likely leading to the kind of cuts to the program that were estimated under previous GOP efforts at Obamacare repeal.

Democrats hate this proposal, as you might expect, since it includes several ideas from earlier GOP proposals that would cut Medicaid and potentially remove some patient protections as well as dramatically reduce the number of people with insurance.

So why are we going through this exercise again? For two reasons. First, Cassidy and Graham have been persistent. Senate Majority Leader Mitch McConnell, who had essentially said the party was done with attempting to repeal Obamacare after the most recent failed effort in July, is reportedly at least open to spending this week seeing if the bill can pass.

Second, this may be Republicans’ last opportunity to repeal Obamacare — at least for a while. The so-called reconciliation budget language, under which Republicans can pass bills that affect budgetary policy with 51 votes rather than 60, expires on Sept 30. The Senate can use the reconciliation process only once per fiscal year for a complicated bill like this and the GOP intends to use the 2018 reconciliation vote on the party’s tax reform proposal. So the next two weeks are likely the GOP’s last chance to pass an Obamacare repeal with 51 votes before the 2018 midterms, after which the GOP may not control both houses of Congress.

Remember the math. For a bill to pass the Senate, assuming all 48 Democrats and Democratic-leaning independents vote against this, as expected, the GOP needs 50 of its 52 senators, so Vice President Pence can cast a potentially tie-breaking 51st vote.

Almost certain to vote ‘yes’: 41 Senate Republicans

In July, Republicans pushed three different repeal bills: a narrow, “skinny” version that would have left much of Obamacare in place; a more conservative bill that would have repealed essentially the entire law; and a piece of legislation written by McConnell that tried to split the difference between those approaches. Of the 52 Republicans, 39 voted for all three versions of the legislation. I think it’s safe to assume that this group will support virtually any anti-Obamacare bill.

The two senators that get us to 41 are Heller and Graham. Heller opposed two of the three previous Obamacare repeal bills, arguing that they cut Medicaid too deeply. (He backed the “skinny” repeal.) But Heller has now reversed course; he’s co-sponsoring this legislation even though it also cuts Medicaid funding. And Graham, another co-sponsor, is also obviously fully on board after opposing one of the repeal proposals in July.

Likely to vote ‘yes’: 5 Senate Republicans

Tennessee’s Lamar Alexander, West Virginia’s Shelley Moore Capito, Tennessee’s Bob Corker, Arkansas’s Tom Cotton and Ohio’s Rob Portman each cast essentially symbolic votes against one of the three Obamacare repeal provisions in July. (Capito and Portman, in particular, expressed concerns about Medicaid cuts). In a scenario in which an Obamacare repeal bill actually had the chance to pass, they would likely vote for it.

So that puts this legislation at 46 likely “yes” votes. It needs four of the other six Republicans. And that’s where the math gets harder …

Almost certain to vote ‘no’: 1 Senate Republican

Maine’s Susan Collins has been opposed to virtually every GOP effort to repeal the ACA, including all three bills that came up for a vote. Collins attacked them in scathing terms for potentially cutting billions from Medicaid and leaving millions more people uninsured.

Likely to vote ‘no’: 1 Senate Republican

Alaska’s Lisa Murkowski also voted against all three versions of repeal in July, criticizing what she viewed as an overly secretive and partisan process to write the various bills and raising concerns about the Medicaid cuts. She has not slammed the GOP repeal effort as aggressively as Collins, but she does not sound especially inclined to back Cassidy-Graham.

So if Collins and Murkowski are “no” votes, Republicans need all four members below to vote “yes.”

Wild cards: 4 Senate Republicans

Utah’s Mike Lee and Kentucky’s Rand Paul have been continual roadblocks for Republicans during the repeal process, fighting it from the right and essentially opposing any legislation that leaves Obamacare’s rules and regulations in place. Lee has been noncommittal about Cassidy-Graham. But Paul has attacked it, arguing that it still gives states the choice and ability to effectively leave Obamacare in place. He sounds like a hard “no” right now, but I’m skeptical he would cast the deciding vote to block an Obamacare repeal bill. The reason: Paul has cultivated a brand as a strong conservative, so a vote that would, in effect, save Obamacare would not be ideal for him.

Kansas’s Jerry Moran, meanwhile, has been a vocal defender of Medicaid, so it’s not clear if he would back a bill that cuts Medicaid as much as Graham-Cassidy does.

McCain, for his part, was a key vote against Obamacare repeal in July and it seemed like a capstone to the Arizona senator’s career as a self-described maverick. He urged Republicans just this Sunday not to engage in a hurried process that skips over the relevant committees and doesn’t include Democrats. Cassidy-Graham is being rushed, hasn’t gone through the committees for hearings and has no Democratic support.

What could switch McCain to a “yes”? Graham and McCain are extremely close friends, perhaps the tightest relationship of any two members of the Senate. I have some doubt that McCain would vote down a bill that Graham has advocated so strongly for. And the Ducey endorsement of this legislation could also move the Arizona senator towards supporting it.

So, yes, the Republicans are close to having the votes to repeal Obamacare. But, as Politico’s Jennifer Haberkorn wrote recently, “Any Obamacare repeal bill has 45-46-47 votes in the Senate. The issue for the GOP has always been the last few to get to 50.”

By the time this legislation gets a CBO score (which is likely to predict that it would leave millions of additional people uninsured), Democrats and activists whip up opposition to it, and the press writes a bunch of stories about who will not be covered under its provisions — three things that have happened each time Republicans have neared Obamacare repeal this year — a “yes” vote will be harder for wavering GOP senators than it seems today.

Also, this bill — even if it passes the Senate — must still be approved by the House. So Republicans seem close to repealing Obamacare. But that’s what everyone has been saying for months. Will they finally do it? Stay tuned.