public static float idealNestPop(
    Species species, Venue site, World world, boolean cached
  ) {
    final Nest nest = (cached && site instanceof Nest) ?
      (Nest) site : null ;
    if (nest != null && nest.idealPopEstimate != -1) {
      return nest.idealPopEstimate ;
    }
    //  TODO:  Repeating the sample has no particular benefit in the case of
    //  predator nests, and is still unreliable in the case of browser nests.
    //  Consider doing a brute-force flood-fill check instead?
    float estimate = 0 ; for (int n = NEW_SITE_SAMPLE ; n-- > 0 ;) {
      estimate += idealPopulation(site, species, world) / NEW_SITE_SAMPLE ;
    }
    if (nest != null && nest.idealPopEstimate == -1) {
      nest.idealPopEstimate = estimate ;
    }
    return estimate ;
  }