                                           (repeat (- (count long-genome) (count short-genome))
                                                   'uniform-padding))
           new-genome (vec (remove-uniform-padding
-                            (map (fn [x1 x2]
-                                   (if (< (lrand) 0.5)
-                                     x1
-                                     x2))
-                                 short-genome-lengthened
-                                 long-genome)))]
+                            (mapv (fn [x1 x2]
+                                    (if (< (lrand) 0.5)
+                                      x1
+                                      x2))
+                                  short-genome-lengthened
+                                  long-genome)))]
       (make-individual :genome new-genome
                        :history (:history parent1)
                        :age ((age-combining-function argmap) parent1 parent2 new-genome)

                        (/ 1 (+ (/ 1 combination-rate) 1)))
        after-combination (vec 
                            (apply concat
                                   (map (fn [g1 g2]
                                          (if (< (lrand) combination-rate)
                                            (lshuffle [g1 g2])
                                            [g1]))
                                        (:genome parent1)
                                        (cycle (:genome parent2)))))
        new-genome (vec (filter identity
                                (map #(if (< (lrand) deletion-rate) nil %)
                                     after-combination)))]
    (make-individual :genome new-genome
                     :history (:history parent1)
                     :age ((age-combining-function argmap) parent1 parent2 new-genome)

                        0
                        (/ 1 (+ (/ 1 addition-rate) 1)))
        after-addition (vec (apply concat
                                   (mapv #(if (< (lrand) addition-rate)
                                            (lshuffle [% 
                                                       (random-plush-instruction-map
                                                         atom-generators argmap)])
                                            [%])
                                         (:genome ind))))
        new-genome (vec (filter identity
                                (mapv #(if (< (lrand) deletion-rate) nil %)
                                      after-addition)))]
    (make-individual :genome new-genome
                     :history (:history ind)
                     :age (inc (:age ind))
