anchor.diff:  
   (define-function create-numerica-model (name &key 
                                           (vars (progn (format t "~&; Collecting variables...~%") (query ode-var)))
  -                                        (ode-comments t)
  +                                        (ode-comments nil)
                                           (display-vars t)
                                           (overwrite :query)
                                           (abstol nil) 
  
positive.code:     (format file "~A) OF REAL~%~
                    ~2TVARIABLE~%~
                      ~4Tc as ARRAY(~S) of Concentration~%~
                    ~2TEQUATION"
              (map 'string (constantly #\space) (format nil "~A" (length allvars)))
              (length ode-vars))
  
      ;; write the rate fns:
      (loop for v in ode-vars
            for i = 1 then (1+ i)
            for rate = (compute-ode-expression (nth (1- i) (numerica-model-ode-rates nm)) nm)
            do  (with-print-context t 
                  (princ #\.)
                  ;; write comment
                  (if (numerica-model-ode-comments-p nm)
                      (b-format file "~%~4T# ~A = ~A " v rate))
                  ;; write eqn
                  (write-ode-fn i rate)))
  
      ;; now, we've determine the actual # kvars ...
      ;; go back and scribble at klen-pos
  
negative.code:           
  (defun write-model-block (nm file)
    (let* ((ode-vars  (numerica-model-ode-vars nm))
           (allvars   (query var))
           (klen-pos  nil)
           (npart     0))
      (labels ((rate-str-without-outer-parens (rate)
                 (let ((rate-str (format nil "~S" rate)))
                   (with-dimensionless-math (numerica-model-base-units nm)
  