private static void tapAllResolve(final AbilityFactory af, final SpellAbility sa) {
        HashMap<String, String> params = af.getMapParams();

        CardList cards = null;

        ArrayList<Player> tgtPlayers = null;

        Target tgt = af.getAbTgt();
        if (tgt != null)
            tgtPlayers = tgt.getTargetPlayers();
        else if (params.containsKey("Defined"))        // Make sure Defined exists to use it
            tgtPlayers = AbilityFactory.getDefinedPlayers(sa.getSourceCard(), params.get("Defined"), sa);

        if (tgtPlayers == null || tgtPlayers.isEmpty())
            cards = AllZoneUtil.getCardsInPlay();
        else
            cards = AllZoneUtil.getPlayerCardsInPlay(tgtPlayers.get(0));

        cards = AbilityFactory.filterListByType(cards, params.get("ValidCards"), sa);

        for (Card c : cards) c.tap();
    }