                      :n-relations    (:relations options)
                      :n-queries      (:queries options)}]
         (log "options: " options)
+        (when (not= (rem (:n-reservations options) (:n-customers options)) 0)
+          (println "WARNING: number of reservations is not divisible by number"
+            "of customers."))
         options)
       nil)))
 


; MAIN

(defn -main [& args]
  "Main function. `args` should be a list of command line arguments."
  (when-let [options (parse-args args)]

            (map #(spawn customer-behavior % data options) (range n-customers))
          done-promises
            (repeatedly n-reservations promise)]
      (log-data data)
      (doseq [[customer reservation done?]
                (zip (cycle customer-actors) reservations done-promises)]
        (send customer reservation done?))
      (doseq [done? done-promises]
        (deref done?))
      (log-data data)))
  (Thread/sleep 1000) ; XXX
  (shutdown-agents))
