anchor.diff:      out-vec))
   
   (defun find-pos (row col)
  +  (declare (type fixnum row col))
     (+ (* row *board-length*) col)) 
   
   (defun find-row-col (pos)
  +  (declare (type fixnum pos))
     (let ((col  (mod pos *board-length*))
           (row (floor (/ pos *board-length*)))
           )
  
positive.code: 
    ;; Remove the most recent piece
    (setf (group-pieces group)
          (delete pos (group-pieces group)))
  
    ;; Unless there are no more pieces in the group
    (if (< 0 (length (group-pieces group)))
  
negative.code:               (< 3 (length (gg-board-history game))))
         ;; Check for for infringement of the Ko rule
         (unless (dolist (move valid-moves)
             ;; Check that the board is not returning to 
             ;; the state prior to your opponents last
             ;; move. (Ko Rule)
  
             ;; Playing with fire
             (let ((new-board nil)
                   (old-board nil))
  
               ;; Get the old board
               (setq old-board (first (gg-board-history game)))
  
               ;; Mod Game
               (do-move! game move)
               ;; Get board
               (setq new-board (copy-vector (gg-board game)))
               ;; Unmod game 
               (undo-move! game)
               (unless (equal-board? new-board old-board)
                 (push move legal-moves))))
           ;; Return legal moves
           legal-moves)
  
  