Iterator<Person> it = this.listEvaluators();
while (it.hasNext()) {
Person p = it.next();
boolean approved = false;
Distance distance = Distance.getInstance(p);
if (maxDist > 0) {
approved = distance.isCloserThan(person, maxDist);
}
if ((!matchAll && !approved) ||
// last processing was a failure but we can match any definition
(matchAll && approved)) {
// or (!) we have to match all definitions and the previous was success
approved = distance.isHigherThan(person, minLevel);
}
if (approved) {
Float f = this.mapIsEvaluated.get(p);
if (f != null) {