Once Upon a Time has thrown us for many-a-loop in its two seasons, but none as big as tonight’s twists and turns. In the first part of the epic two-part finale, there were scary evil shadows, electoshock torture, and gunshots — and one person may have not made it out alive.

Read spoilers at your own risk! For more on Wetpaint Entertainment's philosophy on spoilers, click here.

We knew that death was likely coming on OUAT after co-creators Adam Horowitz and Eddy Kitsis teased how crazy and emotional it would be, but we had no idea it would be our beloved Neal Cassady/Baelfire (played by the incomparable Michael Raymond-James).

While we can't confirm his death until next week's final episode (Season 2, Episode 22: "And Straight on 'Til Morning"), he suffered a fatal-looking gunshot wound to his chest and then fell through a magical portal to another world, so it seems like he's sadly done. Not only was this betrayal heartbreaking — his fiancée, Tamara, admitted that she lied about their entire relationship, shot him, and then threw a magic bean to send his baby mama, Emma, to another world — but it mirrored the moment when he lost his father, Rumplestiltskin, as a boy. 

As we saw in a flashback, Bae just wanted to save his father from being the Dark One, so the Blue Fairy gave him a bean to send them both to a land without magic. Unfortunately, Rumple wouldn't give up his powers and instead watched as his son slipped away, falling into the same hole then that seemingly killed him in present day. This time around, it was a sacrifice in the name of his son, not wanting Henry to be without his mother, Emma, but ultimately, Neal did the same to Henry as Rumple did to him. However, for Neal, it was for a good cause and not an evil one.

We'll be waiting on pins and needles to see if Neal is somehow alive and well — perhaps in Neverland now? — but until then, hit the comments with your thoughts and speculation. Should Neal have saved Emma, or should Emma have just fallen with him, abandoning Henry? Sound off below. 

Read more OUAT spoilers here.

Once Upon a Time’s Season 2 finale airs on Sunday, May 12, 2013 at 8 p.m. ET/PT on ABC.