@Override
                public boolean canPlay() {
                    CardList possible = AllZoneUtil.getPlayerHand(card.getController());
                    possible = possible.filter(AllZoneUtil.nonlands);
                    return !possible.isEmpty() && super.canPlay();
                }