anchor.diff:              (integerp width)
               (tree? last-gen)                 
               (consp input-lines))
  -       (if (null (car input-lines))
  +       (if (endp (car input-lines))
              (input-lines->avl-tree 0 (1+ y) width (cdr input-lines) last-gen)
              (input-lines->avl-tree (1+ x) y width (cons (cdar input-lines) (cdr input-lines))
                                     (if (equal (car (car input-lines)) #\x)
  
positive.code: 
  ;added n counter
  (defun num-live-neighbors (n width height x y last-gen)
     (if (= n 9)
         0
         (if (= n 4)
             (+ 0 (num-live-neighbors (1+ n) width height x y last-gen))
             (let* ((i (mod (+ (1- x) (floor n 3)) width))
                    (j (mod (+ (1- y) (mod n 3)) height))
                    (key (get-avl-key i j width))
                    (live (if (null (avl-retrieve last-gen key)) 0 1)))
                   (+ live (num-live-neighbors (1+ n) width height x y last-gen))))))
  
  (defun build-next-generation-cell (width height x y last-gen next-gen)
     (let* ((n (num-live-neighbors 0 width height x y last-gen))
            (result (if (null (avl-retrieve last-gen (get-avl-key x y width)))
                        (if (= n 3) "x" nil)
                        (if (or (< n 2) (> n 3)) nil "x"))))
  
negative.code:       (let ((avl-tree (car things))
              (width (cadr things))
              (height (caddr things)))
             (string-list->stdout (avl-tree->output-lines width height height (build-next-generation width height (- height 1) avl-tree
  		                                                           (empty-tree))) state))))
  