@Override
public boolean apply(Game game, Ability source) {
Permanent permanent = game.getPermanent(source.getSourceId());
if (permanent != null && permanent.canTransform()) {
if (permanent.transform(game)) {
Permanent attachTo = game.getPermanent(targetPointer.getFirst(game, source));
if (attachTo != null) {
return attachTo.addAttachment(source.getSourceId(), game);
}
}