One can spend several days trying not to overreact to President Trump’s latest, unprovoked tweetstorm against the late Sen. John McCain R-Ariz., yet still conclude that there is something sick and twisted about Trump’s obsession with the singular American hero Trump disparages.

Tom Rogan already in these pages has eloquently explained why, fake heel spurs or no fake heel spurs, Trump could never be fit to wear McCain’s discarded shoes. And lawyer George Conway, husband of top Trump aide Kellyanne Conway, has presented a persuasive case that Trump’s fulminations about McCain and other bizarre eruptions are signs of a personality disorder.

What remains, though, is a reminder that on facts as well as fulminations, Trump’s flip-out against McCain is full of falsehoods.

First, as many others have noted, Trump repeatedly accused McCain of trying to spread the so-called “Steele dossier” as a way to block Trump’s election, but the undisputed evidence shows McCain didn’t even become aware of the dossier until after Election Day. (Plus, McCain did exactly what a senator should do when provided such material: He turned it over to the FBI, without prejudice. But that’s beside the point about Trump’s dishonesty.)

[Related: Trump: 'I was never a fan of John McCain and I never will be']

What has not been as adequately refuted is Trump’s allegation that McCain voted against a bill to “repeal and replace” Obamacare, and that McCain’s vote was a big surprise. Neither element of that story is true.

First, by the time a healthcare bill finally reached a vote in the Senate, it was in no way, shape or form a “repeal and replace” bill. In reality, it was a shell of a bill known as “skinny repeal,” which did next to nothing other than keep a title and fulfill a promise to repeal the individual and employer mandates from Obamacare. The bill, in short, was an absolute sham. On its own terms, as even most of its supporters admitted, it made no sense, but would have thrown the healthcare market into absolute turmoil.

Instead, skinny repeal was meant only to keep alive the anti-Obamacare effort until something could be concocted behind the closed doors of a conference committee with members of the House.

As neither the House nor the Senate versions had been vetted in open committee hearings, and as the Senate’s skinny repeal was such a sham anyway, McCain reasoned that whatever emerged from conference committee would be seen by the public as illegitimate. He may or may not have been right in that assessment, but it was not unreasonable. And, as skinny repeal itself was a fraud, McCain was indisputably not breaking his pledge to support a repeal of Obamacare combined with a free-market replacement.

Not only that, but he believed, correctly, that the one substantive element of skinny repeal, the elimination of the individual mandate, could be accomplished anyway — as, indeed, it was, in the GOP tax reform bill that later became law. Thus, McCain’s vote effectively blocked no GOP progress on that front, none at all.

Finally, it is just a lie to say McCain had not signaled his intentions, and his reasoning, well in advance. Two days earlier, in his tour de force of a major floor speech upon his return to the Senate from his initial cancer treatment, McCain signaled quite clearly where he stood [with my emphases in Italics]:

“I will not vote for the bill as it is today. It's a shell of a bill right now. We all know that. I have changes urged by my state's governor that will have to be included to earn my support for final passage of any bill. I know many of you will have to see the bill changed substantially for you to support it. We've tried to do this by coming up with a proposal behind closed doors in consultation with the administration, then springing it on skeptical members, trying to convince them it's better than nothing, asking us to swallow our doubts and force it past a unified opposition. I don't think that is going to work in the end. And it probably shouldn't.”

And he continued in that vein for several more paragraphs.

McCain’s argument was one of deepest principle. Even those of us who would have reluctantly voted for skinny repeal in order to keep the whole effort alive could recognize the wisdom in McCain’s position.

So, McCain did not kill a “repeal and replace” bill, and he blindsided nobody by voting against the bill that finally emerged. Trump is lying about McCain, and it’s time for him to stop it.