Nobody has. Even the lawmakers who are about to vote on it. It's still being written.
That didn't keep holdout Republicans from signing on to the bill throughout the day.
Sens. Jeff Flake of Arizona and Susan Collins of Maine said they'd vote yes, virtually assuring passage, probably later Friday night.
That lack of transparency has turned into one of Democrats' major lines of attack in debate on the Senate floor and on social media.
Democratic Sen. Claire McCaskill of Missouri tweeted a photo of amendments that she said would be added to the bill but that she had not seen.
"This is so bad. We have just gotten list of amendments to be included in bill NOT from our R colleagues, but from lobbyists downtown. None of us have seen this list, but lobbyists have it. Need I say more? Disgusting. And we probably will not even be given time to read them."
The broad outlines of the legislation are known, but there were last-minute tweaks being made as Republicans sought to get to the 50 votes they'd need.
"This is a really bad bill for my constituents. I think. Because I will not have time to read it before I am forced to vote on it," Democratic Sen. Chris Murphy of Connecticut said on the Senate floor Friday evening.
A lot of this is theater. It's no great secret that most lawmakers don't sit down personally with a highlighter and read the final text of a bill. Details are meant to be hashed out over the course of weeks. But this massive piece of legislation has been pushed at lightning speed, and largely without input from Democrats, who had signaled their united opposition to it.
And the bill senators are likely to pass won't become law. Probably not, anyway. It'll have to be reconciled with the competing bill passed by the House, unless the House decides to take up the Senate version.
When Sen. Ron Wyden, an Oregon Democrat, complained about the situation to Senate Majority Leader Mitch McConnell on the Senate floor, McConnell argued that Democrats would have "plenty of time" to read it and that they know most of what's in there anyway.
"There were four days of hearings in the committee," the Kentucky Republican said. "The report has been out at least two weeks. I'm totally confident our friends on the other side are fully familiar with almost all aspects of this and the final version he'll certainly have an opportunity to read, but he's very familiar with the various parts of this. He had plenty of time to look at it in committee, and as I said, there will be plenty of time to read the final version of it before the vote."
McConnell said that at just after 3 p.m. ET. But still, there was no final text.
A bit before 7 p.m., Sen. Dick Durbin of Illinois said Democrats had been handed a new version, and he hoisted a 479-page stack of documents.
"479 pages were handed to us," Durbin said. "They tell us that some of this has been around for awhile. Some of it's new. They don't tell us which part is new and which part is old," he complained, before picking up a specific page of the legislative text where a staffer had scrawled provisions in cursive.
"We're not even teaching cursive in a lot of schools anymore but someone on the staff knew it to try," Durbin said. "The problem is they wrote it in cursive on the margin here. ... I defy anybody to read it because the problem is when they copied it they chopped off lines so there aren't full sentences.""
Collins, the Maine Republican and a swing vote, did not mention the text when she tweeted about her decision to support the bill.
"After securing significant changes, as well as commitments to pass legislation to help lower health insurance premiums, I will cast my vote in support of the Senate tax reform bill," she wrote, before a series of tweets about the changes she recently secured. They're having to write those in