public boolean apply(Game game, Ability source) {
Player player = game.getPlayer(source.getControllerId());
Permanent permanent = game.getPermanent(source.getSourceId());
if (player != null && permanent != null) {
int numCounters = permanent.getCounters().getCount(CounterType.DELAY);
permanent.removeCounters(CounterType.DELAY.createInstance(), game);
for (int i = numCounters; i > 0; i--) {
if (player.chooseUse(Outcome.Benefit, "Pay {1}{W}? (" + i + " counters left to pay)", game)) {
Cost cost = new ManaCostsImpl<>("{1}{W}");
if (cost.pay(source, game, source.getSourceId(), source.getControllerId(), false)) {
continue;