protected void updateStocks(int numUpdates) {
    if (Float.isNaN(credits)) credits = 0 ;
    if (Float.isNaN(taxed)) taxed = 0 ;
    if (numUpdates % UPDATE_PERIOD == 0) diffuseExistingDemand() ;
    //
    //  Here, we clear out any expired orders or useless items.  (Consider
    //  recycling materials or sending elswhere?)
    for (Manufacture m : specialOrders) {
      //
      //  TODO:  Only remove once the item is picked up or the actor loses
      //  interest.
      if (m.finished()) specialOrders.remove(m) ;
    }
    //
    //  TODO:  Just have all stocks wear out/go off, given enough time.
  }