Once Upon a Time has set its sights on an infamous archer — as well as an adorable mermaid and a deplorable dog-hater — as it populates its very final flourish of episodes.

Fan favorite Sean Maguire (who plays Regina’s soul mate Robin Hood), Victoria Smurfit (as Cruella de Vil), JoAnna Garcia-Swisher (Ariel) and Robbie Kay (Peter Pan) are all confirmed to return toward the end of the ABC drama’s seventh and final season, ABC announced on Friday.

Additionally, Lee Arenberg, Keegan Tracy and Tony Amendola will reprise their series-opening roles as Grumpy/Leon, Blue Fairy/Mother Superior and Geppetto/Marco.

Each of the above will appear in Episode 21 or the series finale (titled “Leaving Storybrooke”), or both. They join previously announced returnees Jared Gilmore and Beverley Elliot, who will play Younger Henry and Granny in Episode 20 flashbacks.

Once Upon a Time continues its farewell season this Friday at 8/7c, with Episode 13.

Want more scoop on Once, or for any other show? Email InsideLine@tvline.com and your question may be answered via Matt’s Inside Line.