anchor.diff:  	   (q7 (/ (* (+ 5.0 (* -2.0 c1) (* 28.0 t1) (* -3 (expt c1 2.0)) (* 8.0 e-prime-squared) (* 24.0 (expt t1 2.0))) (expt d 5.0)) 120.0))
   	   (lat (- fp (* q1 (+ q2 (- q3) q4))))
   	   (lon (+ long0 (/ (+ q5 (- q6) q7) (cos fp)))))
  -	(list (rad2deg lat) (rad2deg lon))))
  +	(list (rad2deg (realpart lat)) (rad2deg (realpart lon)))))
   
  
positive.code: ;; Populate the hash table
  (fill-ellipsoids)
  
  ;; Retrieve the names of the hash table ellipsoids
  (defun ellipsoid-names ()
    (loop for key being the hash-keys in *ellipsoids* collect key))
  
  ;; Constants used in the equations
  
negative.code: ;; * http://www.uwgb.edu/dutchs/UsefulData/UTMFormulas.htm
  ;; * http://www.uwgb.edu/dutchs/FieldMethods/UTMSystem.htm
  (defun lat-lon-to-utm (lat lon &key (ellipsoid "WGS84"))
    "Convert a point given as latitude and longitude into UTM using the specified ellipsoid.  The default ellipsoid is WGS84."
    (let* ((lat-rad (deg2rad lat))
  		 (lon-rad (deg2rad lon))
  		 (a (car (gethash ellipsoid *ellipsoids*)))
  