@Override
public CiEyeResponse respond(Request request) throws IOException {
LandscapeObservation result = new LandscapeObservation();
long timeToLiveMillis = Long.MAX_VALUE;
for (Feature feature : landscape.features()) {
final TargetGroupBriefing briefing = spyIntermediary.briefingOn(feature);
result = result.add(briefing.status);
timeToLiveMillis = min(timeToLiveMillis, briefing.millisecondsUntilNextUpdate);
}
if (prison.crimeReported(landscape)) {