 
 
 (defn wrong-tracker-load-unload-order
-  "Returns nil if the tracker has load and unload orders that are
+  "Returns nil if the tracker has load and/or unload orders that are
 consistent with its :dependencies and :dependents graphs.  If there
 are inconsistencies, returns a map containing either or both of the
 keys :load or :unload, where the values are a collection of 2-element
 vectors [a b] where a and b are symbols representing namespace names,
 and a requires or uses b, and that dependency order is violated by the
 load or unload order in the tracker."
-  [tracker]
+  [tracker check-unload?]
   (let [load-order (:dolly.copieddeps.tns.clojure.tools.namespace.track/load tracker)
         load-set (set load-order)
         unload-order (:dolly.copieddeps.tns.clojure.tools.namespace.track/unload tracker)

                     (doseq [child-ns (sort (dependencies ns))]
                       (show child-ns (inc level) ns))
                     (swap! shown-namespaces assoc ns next-ns-number)))))]
    (doseq [ns nss-unload-order]
      (when-not (@shown-namespaces ns)
        (show ns 0 nil)))))


                                  (and (load-set a) (load-set b)
                                       (before? load-order a b)))
                                (concat dependency-pairs dependent-pairs)))
        unload-order-violations (if check-unload?
                                  (set
                                   (filter
                                    (fn [[a b]]
                                      (and (unload-set a) (unload-set b)
                                           (before? unload-order b a)))
                                    (concat dependency-pairs dependent-pairs)))
                                  nil)]
    (if (or (seq load-order-violations)
            (seq unload-order-violations))
      {:load (seq load-order-violations)
