public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
Permanent sourceCreature = game.getPermanent(source.getSourceId());
if (controller != null && sourceCreature != null) {
FilterCreaturePermanent filter = new FilterCreaturePermanent("creature it's blocking");
filter.add(new BlockedByIdPredicate((source.getSourceId())));
Target target = new TargetCreaturePermanent(filter);
if (target.canChoose(source.getSourceId(), controller.getId(), game)) {
if (controller.chooseTarget(outcome, target, source, game)) {
Permanent attackingCreature = game.getPermanent(target.getFirstTarget());
if (attackingCreature != null) {