@Override
public void perform(final org.nlogo.nvm.Context context) throws LogoException {
AgentSet agentset = argEvalAgentSet(context, 0);
if (!(context.agent instanceof org.nlogo.agent.Observer)) {
if (agentset == world.turtles()) {
throw new EngineException
(context, this, I18N.errorsJ().get("org.nlogo.prim.$common.onlyObserverCanAskAllTurtles"));
}
if (agentset == world.patches()) {
throw new EngineException
(context, this, I18N.errorsJ().get("org.nlogo.prim.$common.onlyObserverCanAskAllPatches"));
}
}
if (context.makeChildrenExclusive()) {
context.runExclusiveJob(agentset, next);