anchor.diff:     (pop (slot-value game 'players-round))
      (head-player game)))
   
  +(defgeneric rotate-turn (game)
  +  (:method ((game game))
  +   (pop (slot-value game 'turn-player))
  +   (turn-player game)))
  +
   (defgeneric pass-turn (game)
     (:method ((game game))
  -   (with-slots ((the-turn-player turn-player)
  -                (the-players-round players-round)) game
  -     (pop the-turn-player)
  -     (let ((is-head-player (eq the-turn-player the-players-round)))
  -       (when is-head-player
  -         (pass-head game)
  -         (pop the-turn-player))
  -       is-head-player))))
  +   (let ((is-head-player (eq (rotate-turn game) (head-player game))))
  +     (when is-head-player
  +       (pass-head game)
  +       (rotate-turn game))
  +     is-head-player)))
   
   (defmethod territories ((game game))
     (territories (game-map game)))
  
positive.code:        (find-vertex graph destination-key)))))
  
  (defmethod send ((game game) message &rest rest)
    (apply #'send (slot-value game 'fsm) message rest))
  
  (defgeneric add-player (game name)
    (:method ((game game) (name string))
  
negative.code:                 collecting (if (equal p (turn-player game))
                               (format nil "-~a-" p)
                               p)))
    (format stream "~&Etapa:~t~a" (state game))
    (format stream "~&Territorios:")
    (loop for v being the hash-values in (territories game) do
          (format stream "~&~t~a~&~t~tDueño:~t~t~a~&~t~tEjércitos:~t~t~a"
  