this.expansionSetCode = "TSP";
this.color.setBlue(true);
// You may exile a blue card from your hand rather than pay Snapback's mana cost.
FilterOwnedCard filterCardInHand = new FilterOwnedCard("a blue card from your hand");
filterCardInHand.add(new ColorPredicate(ObjectColor.BLUE));
filterCardInHand.add(Predicates.not(new CardIdPredicate(this.getId())));
this.addAbility(new AlternativeCostSourceAbility(new ExileFromHandCost(new TargetCardInHand(filterCardInHand))));
// Return target creature to its owner's hand.
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
this.getSpellAbility().addEffect(new ReturnToHandTargetEffect());