   (let [random-seeds (loop [seeds '()]
                        (let [num-remaining (- population-size (count seeds))]
                          (if (pos? num-remaining)
-                           (let [new-seeds (repeatedly num-remaining 
-                                                       #(random/lrand-bytes 
+                           (let [new-seeds (repeatedly num-remaining
+                                                       #(random/lrand-bytes
                                                           (:mersennetwister random/*seed-length*)))]
                              (recur (list-concat seeds (filter ; only add seeds that we do not already have
                                                          (fn [candidate]

        [clojush.instructions boolean code common numbers random-instructions string char vectors
         tag zip environment input-output genome]
        [clojush.pushgp breed report]
        [clojush.pushgp.selection 
         selection epsilon-lexicase elitegroup-lexicase implicit-fitness-sharing novelty]
        [clojush.experimental.decimation]))



(defn produce-new-offspring
  [pop-agents child-agents rand-gens
   {:keys [decimation-ratio population-size decimation-tournament-size use-single-thread]}]
  (let [pop (if (>= decimation-ratio 1)
              (vec (doall (map deref pop-agents)))
              (decimate (vec (doall (map deref pop-agents)))
