This season on Arrow, Oliver Queen (Stephen Amell) is confronting his legacy — in more ways than one.

While Oliver struggles to figure out where he can do the most good — is it as the Green Arrow, or as the mayor? — he has been haunted by a mysterious new villain, Prometheus, who has ties to Oliver's past and a major vendetta against the hooded vigilante. "He's less interested in killing people and killing Oliver, and much more interested in torturing Oliver and outing him," executive producer Wendy Mericle told TVGuide.com earlier this year.

But who is this masked villain out to get Oliver? We have a few theories!

Tommy Merlyn (Colin Donnell)
Why it might be him:
Executive producer Marc Guggenheim has said that Oliver "bears a measure of responsibility for the creation of Prometheus." And given the obvious ties between Arrow's current season and it's first — which ended with the death of Tommy in the Glades — there would be a nice symmetry if he wound up being the Big Bad this year. (It could also explain why Prometheus' costume recalls the Dark Archer outfit worn by Tommy's father, Malcolm Merlyn [John Barrowman].) As to how Tommy could be back from the dead? One word: Flashpoint. Alternately, two words: Lazarus Pit.
Why it might not be him: Donnell's pretty busy filming Chicago Med right now, which is why he wasn't even able to make a brief appearance in the 100th episode.

All your burning CW crossover questions, answered

Billy Malone (Tyler Ritter)
Why it might be him:
If Billy is upset over someone close to him after Oliver crossed them off his List, then it would make sense for him to join the SCPD to get information on the Green Arrow in order to carry out his revenge plan. If that's the case, it's likely that Billy's relationship with Felicity (Emily Bett Rickards) isn't by chance either, and that he specifically targeted her as part of his plan to take down Oliver.
Why it might not be him: Billy is such a blank slate of a character that if it is revealed he's an evil villain, we wouldn't even blink. A good reveal like this only works if you're invested in the character before you realize his true intentions. Otherwise, it just falls flat.

Slade Wilson (Manu Bennett)
Why it might be him:
Slade remains the best Arrow villain of all time, and given that he was Oliver's first major enemy it would also provide a nice parallel to the first season.
Why it might not be him: If the Arrow producers really wanted to surprise fans by bringing Slade back as the new Big Bad, we doubt they would have dampened the dramatic effect so drastically by giving him an all-too-brief cameo in the 100th episode.

Susan Williams (Carly Pope)
Why it might be her:
This cunning reporter keeps popping up, making us think Susan's going to play a larger role going forward. And it's about time Arrow get its first female Big Bad!
Why it might not be her: Is she a physical match for the imposing Prometheus? No. But this show features a kid who survived a nuclear bomb because of magical rags and aliens, so we feel the rules can bend a bit when it comes to those small details.

Constantine Drakon's (Darren Shahlavi) son
Why it might be him:
We know you're probably saying, "Who?" right now, and that's OK. Constantine only appeared in the first episode of Arrow as the head of security for Adam Hunt. When Oliver, then known as the Hood, went after Adam, he had to first go through Constantine to get to him, ultimately killing him with a flechette. If Prometheus is Constantine's son, it could also explain why he melts down Oliver's arrows into deadly throwing stars that resemble the flechettes that killed his father.
Why it might not be him: See above, re: Who?

Arrow's midseason finale airs Wednesday at 8/7c on the CW.

(Full Disclosure: TVGuide.com is owned by CBS, one of the CW's parent companies.)