private Series <Target> sampleTargets(
    Object key, Target t, World world, int limit, Series sampled
  ) {
    for (int n = limit / 2 ; n-- > 0 ;) {
      final Target v = randomMatchNear(key, t, -1) ;
      if (v == t || v == null || v.flaggedWith() != null) continue ;
      sampled.add(v) ;
      v.flagWith(sampled) ;
    }
    for (Object o : matchesNear(key, t, -1)) {
      if (o == t) continue ; final Target v = (Target) o ;
      if (v.flaggedWith() != null) continue ;
      sampled.add(v) ;
      if (sampled.size() >= limit) break ;
    }
    return sampled ;
  }