   [pop argmap]
   (loop [survivors (-> pop
                        (nonempties-when-autoconstructing argmap)
+                       (age-mediate argmap)
                        (screen argmap)
-                       (age-mediate argmap)
                        (retain-one-individual-per-error-vector))
          cases (lshuffle (range (count (:errors (first pop)))))]
     (if (or (empty? cases)

  [pop {:keys [tournament-size total-error-method] :as argmap}]
  (let [subpop (-> pop
                   (nonempties-when-autoconstructing argmap)
                   (screen argmap)
                   (age-mediate argmap))
        tournament-set (doall
                         (for [_ (range tournament-size)]
                           (lrand-nth subpop)))

                                                               1
                                                               (inc sel-count)))))
    selected))
