A long, long time ago in a political world that now seems far, far away, people thought Donald Trump's controversial comments might be offensive enough to bring his presidential bid to an end.

Disparage undocumented Mexican immigrants as "rapists?" A disaster for any presidential hopeful. Bash an American war hero for "getting caught?" No candidate could get away with that.

Except Donald Trump did.

So here we are, 10 months later, and Sen. John McCain, the war hero whom Trump had so questionably criticized -- not to mention Trump-hating Sen. Lindsey Graham's good friend and the senator running for reelection in a state with a rapidly expanding Hispanic population -- is actually supporting Trump. In an interview with CNN airing Sunday, McCain declined to rehash the whole "war hero" debate, generally played nice and told his party to back Trump.

How? Why?

It's actually not that complicated. McCain is walking on a tightrope right now. Trump's candidacy, as McCain said at a private fundraiser in April, according to audio obtained by Politico, has energized the Hispanic media and Latino voters in a way he's never seen before.

If Donald Trump is at the top of the ticket, here in Arizona, with over 30 percent of the vote being the Hispanic vote, no doubt that this may be the race of my life. If you listen or watch Hispanic media in the state and in the country, you will see that it is all anti-Trump. The Hispanic community is roused and angry in a way that I've never seen in 30 years.

But McCain can't go full-anti-Trump. His Senate seat all of a sudden seems vulnerable. He needs Republican voters to vote for him and Trump, and he hopes he can tap into the wave of excitement that seems to follow the Trump campaign everywhere it goes.

So McCain doesn't have much of a choice. He might not like Trump, but he needs Trump's voters. And thus, he's supporting a man who less than a year ago suggested McCain's years in the Hanoi Hilton weren't the stuff of heroes.