private static void untapResolve(final AbilityFactory af, final SpellAbility sa) {
        HashMap<String, String> params = af.getMapParams();
        Card card = sa.getSourceCard();
        Target tgt = af.getAbTgt();
        ArrayList<Card> tgtCards = null;

        if (params.containsKey("UntapUpTo"))
            untapChooseUpTo(af, sa, params);
        else {
            if (tgt != null)
                tgtCards = tgt.getTargetCards();
            else {
                tgtCards = AbilityFactory.getDefinedCards(card, params.get("Defined"), sa);
            }

            for (Card tgtC : tgtCards) {
                if (AllZoneUtil.isCardInPlay(tgtC) && (tgt == null || CardFactoryUtil.canTarget(af.getHostCard(), tgtC)))
                    tgtC.untap();
            }
        }
    }