public List<Double> getChances(List<List<Point>> sets) {
        List<Integer> differences = new ArrayList<>();
        List<Double> chances = new ArrayList<>();
        double sumOfInverse = 0;
        double bigEnoughNumber = 100.0;//in case of fully suitable set

        for (int i = 0; i < sets.size(); i++) {
            int coveredEmerg = 0;
            for (Point incident : incidents) {
                for (int j = 0; j < sets.get(i).size(); j++) {
                    if (inCircle(incident.x, incident.y, sets.get(i).get(j).x, sets.get(i).get(j).y, radius)) {
                        coveredEmerg++;
                        j = sets.get(i).size();
                    }
                }
            }
            differences.add(incidents.size() - coveredEmerg);
            if (incidents.size() != coveredEmerg) {
                sumOfInverse += 1.0 / (incidents.size() - coveredEmerg);
            } else {
                sumOfInverse += bigEnoughNumber;
            }
        }

        for (int i = 0; i < sets.size(); i++) {

            if (differences.get(i) != 0) {
                chances.add(Math.round(((1.0 / differences.get(i)) / sumOfInverse) * 1000.000) / 1000.000);
            } else {
                chances.add(Math.round((bigEnoughNumber / sumOfInverse) * 1000.000) / 1000.000);
            }



        }

        return chances;
    }