"Once upon a time" had some surprises all through the last season and the biggest and latest surprise is that Zelena is still alive. The bad and wicked witch had lost one of the most important things through her magic, in order to give Emma a good fighting chance against the Black Fairy Regina's long-lost sister made the Ultimate Sacrifice by giving up all her power.

Zelena was able to see her mistake and was ready to put back her pride to make things right, this was a rare instance and by destroying her magic she had set the black fairy back to square one. As for the heroes, they managed to get an upper hand on the Black Fairy and this arrived at the perfect time as per TV guide.

"Once upon a time" has only three episodes left in season 6, which means just two hours until the final battle and the final chapter.  The Black Fairy has a lead on Emma and her team because they have still not figured out a surefire to defeat her. Emma will need an ultimate weapon to destroy all darkness, probably an epic weapon of epic proportions.

According to AV Club, Zelena was not a good friend to anyone in the past, and she is now trying to be a better friend in the future. In the game of magical chess, there are still a couple of moves left, but both sides are going to play at the top of their games if they want to make it to the end of the story.

The heroes have also lost their great source of magic, but Zelena's sacrifice is said to bring a new change and that will possibly destroy the Black Fairy. "Once upon a time" will have more surprises in the upcoming episodes as Zelena is still alive.