anchor.diff:  ;;;;;;;;;;;;;;;
   ; Beam Search
   ;;;;;;;;;;;;;;;
  -
  -
  -;thanks to Norvig
  +;http://norvig.com/paip/search.lisp
  +;thanks to Mr. Norvig
   (defun sorter (heur)
     "Return a combiner function that sorts according to heuristic."
     #'(lambda (new old)
         (let* ((all-states (append new old)))
   	(stable-sort all-states #'< :key heur))))
   
  -;Also thanks to Norvig
  +;Also thanks to Mr.Norvig
   (defun beam-sorter (beam-width heur)
          #'(lambda (old new)
   	  (let ((sorted (funcall (sorter heur) old new)))
  
positive.code: 		(subseq sorted 0 beam-width))))
   		)
  
  		
  (defun beam-search (problema beam-width) 
    (let* ((*nos-gerados* 0)
  		 (*nos-expandidos* 0)
  		 (tempo-inicio (get-internal-run-time))
  
negative.code: 		 (heur (problema-heuristica problema))
  		 ;(estado= (problema-estado= problema))
  
  		 (result nil)
  		 (tempo 300))
  
      (labels ((beam (estados)
                (cond ((<= (- tempo (/ (- (get-internal-run-time) tempo-inicio) internal-time-units-per-second)) 0.2) (return-from beam-search result))
  		    ((funcall objectivo? (first estados)) (list (first estados)))
                      ((null (first estados)) nil)
                      (t 
                       (let* ((sucessores-estado (problema-gera-sucessores problema (first estados)))
  