anchor.diff:  
   (defun load-cuirasses (&key (lang "jap"))
     (setf *cuirasses* (load-armor-list "armors/cuirasses.lisp"
  -                                 1
  -                                 :lang lang))
  +                                     1
  +                                     :lang lang))
     (format t "[ok] Cuirasses loaded.~%"))
   
   (defun load-gloves (&key (lang "jap"))
     (setf *gloves* (load-armor-list "armors/gloves.lisp"
  -                                 2
  -                                 :lang lang))
  +                                  2
  +                                  :lang lang))
     (format t "[ok] Gloves loaded.~%"))
   
   (defun load-cuisses (&key (lang "jap"))
     (setf *cuisses* (load-armor-list "armors/cuisses.lisp"
  -                                 3
  -                                 :lang lang))
  +                                   3
  +                                   :lang lang))
     (format t "[ok] Cuisses loaded.~%"))
   
   (defun load-sabatons (&key (lang "jap"))
     (setf *sabatons* (load-armor-list "armors/sabatons.lisp"
  -                                 4
  -                                 :lang lang))
  +                                    4
  +                                    :lang lang))
     (format t "[ok] Sabatons loaded.~%"))
   
   
  
positive.code:          do (push combos (gethash (hole-part key)
                                    hole-map nil)))
        hole-map)))
        ;; (loop 
        ;;    for hole-key being the hash-keys of hole-map
        ;;    for values being the hash-values of hole-map
        ;;    do (format t "~a: ~a~%" 
        ;;               (decode-hole-sig hole-key)
        ;;               (length values))))))
  
  
  
  ;;; ---------- Search ----------
  
negative.code: (defstruct armor-tree
    (left nil)
    (right nil))
  
  (defstruct armor-preliminary
    (tree nil)
    (jewel-sets nil))
  
  (defun cluster-armors (armor-list required-effects)
    (let ((result (make-map)))
  