Kaity, Ariel and Gabi wait for Zach Shallcross to hand out the roses on “The Bachelor.”
PHOTO CREDIT: All photos but screen grabs Craig Sjodin/ABC

Do you remember the good old days of “The Bachelor” when what happened in the fantasy suites stayed in the fantasy suites?

Yes, it was all nudge, nudge, wink, wink, doors closing and lights going out, to give the impression that the Bachelor was doing the horizontal mambo, but nobody was bonking and talking back then so we didn’t end up with scenes like we had Monday night where Zach had sex with one woman and felt compelled to tell another woman about it.

At first glance it seems like a ridiculous — and yes, selfish — thing to do and I’m not saying it isn’t. But it also seems like absolute confirmation that Kaity Biggar will be the last one standing after next week’s season finale.

After all, Zach told host Jesse Palmer that “everyone” needed to be aware that he had broken his no-sex vow with Gabi Elnicki, but it sure looked like Ariel Frenkel went home without knowing bupkis about Zach and Gabi’s night in the sack.

If that was indeed the case — and it wasn’t just the editing out of a conversation — then Zach clearly wanted to fess up specifically to Kaity so she wouldn’t be blindsided after he proposed to her.

Hold that thought while we examine how we got into this mess.

Zach lays down the fantasy suite law with Jesse Palmer: No sex!

It started with Zach having the much promoted conversation with Jesse about how there would be “no sex of any kind” in the fantasy suites, which in and of itself raises questions. So no second or third base then?

He said having sex could “muddy the situation” and that was “not how a healthy engagement should start.” But then, couldn’t you just have sex only with the woman you planned to propose to? So many questions.

Also, Zach confirmed he did not have sex with Rachel Recchia in their fantasy suite, not that I’m surprised. Jesse talked about how Zach “got your heart ripped out of your chest” on that overnight and Zach acknowledged that he learned things about Rachel that night “for the worse.” And we would all love to know what that means.

But never mind, it was time for Zach’s overnight date with Ariel. And let’s be honest: we knew he was going to have a whoopsie on one of this dates and we figured it was going to be with her.

Ariel and Zach check out a Thai night market before spending the night together.

I mean the woman is hot. Plus Zach kept talking in his voice-over about their physical chemistry: “When I kiss Ariel my body just gets hot, omigod, turn on the AC please.”

But despite Ariel eating bugs with the man at a night market in Thailand and sharing that she was falling in love with him, there was no boom in the room, just some making out in their private pool.

A still chaste Zach left Ariel in her adorable pyjamas after they fed breakfast to each other.

And then it was Gabi’s turn and she was in her head, as they say.

Did Zach and Ariel really pass right by her window on their way to dinner, with Ariel in that amazing strapless dress? I don’t know, but even a ride to a private island in a pirate ship during her date couldn’t lift the cloud of Gabi’s self-doubt.

She told Zach that getting the second fantasy suite date was stressing her out. She even left him alone on the beach to cry to a producer that she felt disgusting and ugly.

Having cried and sweated her makeup off, Gabi lays it on the line for Zach.

“I was never good enough in my previous relationships. I was not enough and I was cheated on. I was chosen second,” she told Zach.

But Zach told Gabi that things were “special” with her and reassured her so tenderly I began to think maybe she was going to be the last one standing after all, especially given the way they kissed and cuddled each other in bed the next morning.

The “cuddle sesh” to which Gabi alluded turned out to be a euphemism, however.

Zach spilled the beans to Jesse: he and Gabi had sex.

“I feel terrible because I’ve essentially gone against my word,” Zach said.

He added, “I think every woman needs to be at least aware of what actually happened this week because I don’t want there to ever be any secrets,” as Jesse tried to keep the look of incredulousness off his face.

Did Zach really need to tell Kaity or anyone else though? I mean, it would be an elephant in the room down the road for sure. I’m just not convinced the right time to get honest was before he and Kaity got anywhere near their own fantasy suite.

Nor was Gabi pleased when Zach paid a visit to her room before his date with Kaity to say he was going to be “fully transparent” with everyone else about what she thought was just between them.

Oh yeah, and Zach told Gabi he was falling in love with her, to add another layer of confusion to the proceedings.

But there was Kaity, excited about spending all day and night with Zach.

Zach and Kaity paddle the mangrove forest before the waters got rough.

We’ll leave aside the fact that Zach’s talk about “full transparency” coincided with him and Kaity paddling a glass-bottomed boat through the mangrove forest. And speaking of coincidence, Zach came clean to Kaity during a rain shower while thunder rumbled in the background. And is there money in the “Bachelor” budget for those kinds of special effects?

Zach didn’t name names but told her he had been “intimate.”

And she reacted . . . exactly how you would expect her to react. “Crushed” was the word she used. It’s not that she didn’t realize Zach might have sex with someone else, but she didn’t want to hear about it and I’m with her on that.

Zach tried to patch things up by telling Kaity he could see it being “us” at the end and she was “so special,” and he found it hard to see her upset.

“Like, what did you expect Zach? Do you think I was gonna be like yay?” Kaity asked.

Well, duh. Zach finally seemed to start clueing in that honesty isn’t always the best policy, “Catholic guilt” notwithstanding.

Still, despite Kaity saying she felt distant from him and wondering aloud how she would spend the night with him after his revelation, she kept touching him throughout their conversation. So it wasn’t a shock when Kaity showed up for their fantasy suite and declared that relationships weren’t “always rainbows and butterflies” and they would get through this.

If there was any sex during their overnight, nobody was saying boo about it.

There’s not much to tell about the rose ceremony. It was obvious even during last week’s hometowns that Ariel was the odd woman out.

Zach walked her to the waiting van, telling her she was “the most intriguing, interesting, beautiful, respectful, mature, intelligent woman I’ve ever met.”

And we were treated to the rather bizarre sight of Kaity basically telling Gabi she knew she’d had carnal knowledge of the man they were both hoping to snag. This show, honestly.

“I feel like I’m wearing like an A on my chest. Scarlet letter over here,” said Gabi, and I’m pretty sure she was referring to the 1850 Nathaniel Hawthorne novel “The Scarlet Letter” and not the 2010 Emma Stone film “Easy A.”

Gabi wasn’t feeling all that chuffed about having a rose, especially since Zach avoided making eye contact with her.

How will it all turn out in next week’s “stunning” finale, to use Jesse’s word? Probably exactly how we expect with some bumps along the way.

You can watch Monday at 8 p.m. on Citytv. And you can comment here, visit my Facebook page or follow me on Twitter @realityeo