public boolean apply(Game game, Ability source) {
Target target = new TargetPermanent(filter);
Player player = game.getPlayer(source.getControllerId());
if (player.choose(Outcome.PutCreatureInPlay, target, source.getSourceId(), game)) {
Permanent permanent = game.getPermanent(target.getFirstTarget());
if (permanent != null && permanent.sacrifice(source.getSourceId(), game)) {
int toughness = permanent.getToughness().getValue();
WolfToken token = new WolfToken();
token.putOntoBattlefield(toughness, game, source.getSourceId(), source.getControllerId());
return true;
}