After tonight, the Once Upon A Time family tree is just a little bit more crowded as Rumple (Robert Carlyle) finally locates his long lost son in the real world.

This episode actually ties all the way back to the season premiere, which opened in the same apartment where much of this story takes place. Back then, speculation ran high as to who the mysterious stranger was and why he was getting a postcard informing him that the curse had broken.

One of the guesses high on the list was that the man was Rumple’s son and another was that he was Henry’s (Jared S. Gilmore) father. The discussion appeared to come to an end when the episode “Tallahassee” introduced him as Neal Cassidy (Michael Raymond-James), the petty thief who’d stolen Emma’s (Jennifer Morrison) heart and planned a future with her. A future that could have ended with a happily ever after had he not been convinced to abandon her by August (Eion Bailey).

Flash forward to the present, where Emma, Henry and Rumple walk the streets of Manhattan in search of Rumple’s son, Baelfire, only for Emma to chase down none other than Neal. It doesn’t take long for the shock to settle and the fireworks to start, but it’s more of a shouting match than a tearful reunion, and in the end they settle for the neutral location of a bar to talk things out. Emma is convinced the whole thing is a huge conspiracy on Neal’s part, but it turns out he was just as unimpressed to discover he’d been involved with a girl from a land he was so desperately trying to escape.

The minor detail Emma leaves out during their little chat is Henry, and it’s clear when she phones home to catch her parents up on the news that she has no intention of letting Neal in on that secret. Meanwhile, the audience is allowed a smirk as they observe Rumple starting to bond with a boy who’s actually his grandson. The two share hot dogs and Rumple passes along a lesson or two he’s learned from the past.

Meanwhile, Regina (Lana Parrilla), Hook (Colin O’Donoghue), and Cora (Barbara Hershey) decide that Rumple’s absence is just what they need to be able to scour the town for the dagger that will give them control over him. Cora wants to use him to kill off Snow (Ginnifer Goodwin) and company once and for all, while Hook is in it for pure revenge and he’s not keen on Rumple coming out of the whole ordeal alive.

Then there’s Regina, who meanders through the episode like a deflated balloon because she’s lost Henry. It’s disappointing to see such a strong character forfeit so much for such a minor plot point, so hopefully there will be a payoff as the season builds to the final crescendo and badass Regina will come back out to play.

Back in Manhattan, Rumple is like a dog with a bone, refusing to give up the search when Emma returns with the lie that his son got away. They break into Neal’s apartment and, just as things around about to get ugly, Neal returns and the truth begins tumbling out.

The final bombshell is dropped when Henry emerges from the bathroom and Neal does some quick math to work out he’s his biological father. Henry, disillusioned, accuses Emma of being no better than Regina before having a heart-to-heart with his father against the fake Manhattan skyline. And just before the credits roll, we see Rumple coming to the realization that Henry is his grandson – a boy who the Seer of the Enchanted Forest (Shannon Lucio) once foretold would be his undoing. A boy he vowed to kill.

Once Upon A Time airs Sundays @8pm on ABC. New episodes will resume March 3rd.