The stakes for two Republican candidates for president – Ohio governor John Kasich and Florida senator Marco Rubio – could not be higher at this point in the primary. Both men need wins in their respective home states next week to continue their campaigns.

So when Fox News gave each of the four remaining Republican presidential candidates a full hour in primetime to make their pitch to voters before Florida, Ohio, Illinois, North Carolina and Missouri vote on Tuesday, they didn’t hold back.

Kasich led off with a town hall moderated by Greta Van Susteren with mostly undecided voters in Illinois. Unsurprisingly, he played it true to form – heavy on sober policy prescriptions, delivered in his somewhat rambling, stream-of-consciousness style.

You have to give Kasich credit: he entered the race running as the accomplished governor of a critical swing state who pledged to stay above the fray, and he hasn’t veered from that path. As so many of his rivals fell into the trap of political mud wrestling with Trump, Kasich stuck to his game plan. Even if Kasich comes up short in this race, which is almost a certainty regardless of whether he wins Ohio or not, he has run a campaign that leaves him as an attractive VP option for whoever ends up with the nomination.

The same can’t be said for Marco Rubio, who had to spend part of his hour admitting that it was a mistake for him to get into the personal attack tit-for-tat with Trump. Then, without Trump there in person to spar with, he turned his focus back on Trump’s failure to offer meaningful policy prescriptions for the problems that plague the country.

When it came to policy, Rubio – as usual – excelled, even ably handling questions about his previous support for the politically poisonous Gang of 8 immigration bill.

He still needs a dramatic moment that will lead to voters giving him a second look as his campaign death spirals. He didn’t get it tonight.

Meanwhile, Texas senator Ted Cruz, who is quickly consolidating the anti-Trump voting block, spent his hour trying to solidify his position as the party’s best and likely only chance at stopping Trump.

While Cruz said all the right things, and sounded all the conservative dog whistles, the optics of the event were odd. The built-in amen choir at the Cruz event, held at a mega-church in North Carolina, seemed to cheer his every word. It was distracting, as was Cruz’s delivery, which bordered on big-tent evangelist.

Cruz didn’t stumble, didn’t do anything to stall his growing momentum, but he probably didn’t do anything to seal the deal with voters who are leaning towards either Kasich or Rubio.

Donald Trump, as usual, was the evening’s main attraction. Ahead in the delegate count and ahead in the polls, it is all about running out the clock.

Trump is not a typical candidate, and he hardly delivers a typical political stump speech, but there is no question that the political neophyte has been a quick study. Trump is a vastly better candidate than he was just a few months ago.

He seemed restrained by Trump standards last night. He looked, dare I say, almost ... presidential.

He was short on policy specifics, but his voters aren’t coming for wonky policy details. What he lacks in policy chops he more than compensates for in his ability to connect to voters. He knows his voters, he knows what they want to hear, and he gives it to them, delivering a powerful emotional moment in his rally when a marine vet, left disfigured by an IED explosion, came on stage to ask him what he would do about healthcare for veterans.

Another sign of Trump’s growing confidence about his prospects for securing the nomination: he barely mentioned his primary opponents. Instead of attacking his Republican rivals, Trump made the case that he would be the best candidate to defeat Hillary Clinton. And he didn’t make a terrible case.