private static void poisonResolve(final AbilityFactory af, final SpellAbility sa) {
        final HashMap<String, String> params = af.getMapParams();
        int amount = AbilityFactory.calculateAmount(af.getHostCard(), params.get("Num"), sa);

        ArrayList<Player> tgtPlayers;

        Target tgt = af.getAbTgt();
        if (tgt != null)
            tgtPlayers = tgt.getTargetPlayers();
        else
            tgtPlayers = AbilityFactory.getDefinedPlayers(sa.getSourceCard(), params.get("Defined"), sa);

        for (Player p : tgtPlayers)
            if (tgt == null || p.canTarget(af.getHostCard()))
                p.addPoisonCounters(amount);
    }