public boolean configureFor(int stage) {
    if (stage == STAGE_GET_SEED) {
      toPlant = findPlantTile(actor, nursery) ;
      if (toPlant == null) { abortBehaviour() ; return false ; }
      if (nursery.stocks.amountOf(seedMatch()) > 0) {
        this.stage = STAGE_GET_SEED ;
      }
      else this.stage = STAGE_PLANTING ;
    }
    if (stage == STAGE_SAMPLING) {
      toCut = findCutting(actor) ;
      if (toCut == null) { abortBehaviour() ; return false ; }
      this.stage = STAGE_SAMPLING ;
    }
    return false ;
  }