public Behaviour jobFor(Actor actor) {
    if ((! structure.intact()) || (! personnel.onShift(actor))) return null ;
    if (actor.vocation() == Background.SOMA_VENDOR) {
      final Service needed[] = { SOMA, CARBS, PROTEIN } ;
      final Delivery d = Deliveries.nextCollectionFor(
        actor, this, needed, 5, null, world
      ) ;
      if (d != null) return d ;
      return new Supervision(actor, this) ;
    }
    if (actor.vocation() == Background.PERFORMER) {
      final Performance p = new Performance(
        actor, this, Recreation.TYPE_SONG, null
      ) ;
      p.priorityMod = Plan.CASUAL ;
      return p ;
    }
    return null ;
  }