anchor.diff:            (t 'edge))))
   
   (defun is-tree (tree)
  -  (remove-if-not #'(lambda (el) (typep el 'list)) tree))
  +  (every #'(lambda (el) (typep el 'list)) tree))
   
   (defun pick-random-subtree (tree &optional (replacement nil))
     (let ((branches (cdr tree)))
  
positive.code:               (father (tournament-selection fitness-alist program-count)))
            (crossover mother father))))
  
  
negative.code:       m0)))
  
  (defun tournament-selection (fitness-alist program-count)
    (mapcar #'car (get-min-max (loop for r-count upto program-count collect
                                     (pick-random fitness-alist)) #'> #'second)))
  
  (defun fair-coin (chance)
    (let ((toss (random 101)))
  