anchor.diff:    (sort (iterate (for i :from 1 :to (sqrt n))
                    (when (dividesp n i)
                      (collect i)
  -                   (collect (/ n i))))
  +                   (let ((j (/ n i)))
  +                     ;; don't collect the square root twice
  +                     (unless (= i j)
  +                       (collect j)))))
           #'<))
   
   (defun proper-divisors (n)
  
positive.code:                   (enumerate (read-names) :start 1))
               (sum (* position (name-score name))))))
  
  
  ;;;; Tests --------------------------------------------------------------------
  (def-suite :euler)
  
negative.code: (test p20 (is (= 648 (problem-20))))
  (test p21 (is (= 31626 (problem-21))))
  (test p22 (is (= 871198282 (problem-22))))
  (test p23 (is (= 4179871 (problem-23))))
  
  
  ;; (run! :euler)
  