public void resolve() {
                    final int num = source.getCounters(Counters.FADE);
                    final CardList list = AllZoneUtil.getPlayerCardsInPlay(player).filter(new CardListFilter() {
                        public boolean addCard(Card c) {
                            return (c.isArtifact() || c.isLand() || c.isCreature()) && c.isUntapped();
                        }
                    });

                    for (int i = 0; i < num; i++) {
                        if (player.isComputer()) {
                            Card toTap = CardFactoryUtil.AI_getWorstPermanent(list, false, false, false, false);
                            if (null != toTap) {
                                toTap.tap();
                                list.remove(toTap);
                            }
                        } else {
                            AllZone.getInputControl().setInput(new Input() {
                                private static final long serialVersionUID = 5313424586016061612L;

                                public void showMessage() {
                                    if (list.size() == 0) {
                                        stop();
                                        return;
                                    }
                                    AllZone.getDisplay().showMessage(source.getName() + " - Select " + num + " untapped artifact(s), creature(s), or land(s) you control");
                                    ButtonUtil.disableAll();
                                }

                                public void selectCard(Card card, PlayerZone zone) {
                                    if (zone.is(Constant.Zone.Battlefield, AllZone.getHumanPlayer()) && list.contains(card)) {
                                        card.tap();
                                        list.remove(card);
                                        stop();
                                    }
                                }
                            });
                        }
                    }
                }