private boolean damageChooseNontargeted(SpellAbility saMe, int dmg) {
        // TODO: Improve circumstances where the Defined Damage is unwanted
        ArrayList<Object> objects = AbilityFactory.getDefinedObjects(saMe.getSourceCard(), AF.getMapParams().get("Defined"), saMe);

        for (Object o : objects) {
            if (o instanceof Card) {
                //Card c = (Card)o;
            } else if (o instanceof Player) {
                Player p = (Player) o;
                int restDamage = p.predictDamage(dmg, AF.getHostCard(), false);
                if (p.isComputer() && p.canLoseLife() && restDamage + 3 >= p.getLife() && restDamage > 0)    // Damage from this spell will kill me
                    return false;
                if (p.isHuman() && !p.canLoseLife())
                    return false;
            }
        }
        return true;
    }