anchor.diff:  					  (:li
   					   (str (cfg::error-msg error)))))))))
   			  (:div :class "title"
  -				(:h2 (fmt "~A editor" (cfg::title configuration))))
  +				(:h2 (fmt "~A editor" (cfg::title configuration-copy))))
   			  (:div :class "name"
   				(:p (fmt "Name: ~A" (cfg::complete-symbol-name
  -						     (cfg::name configuration)))))
  +						     (cfg::name configuration-copy)))))
   			  (:div :class "schema"
   				(:span (:p (str "Schema:")))
   				(:span (:a :href (format nil "/showsc?schema=~A"
   							 (cfg::complete-symbol-name
   							  (cfg::name
   							   (cfg::configuration-schema
  -							    configuration))))
  +							    configuration-copy))))
   					   (str (cfg::title
  -						 (cfg::configuration-schema configuration))))))
  +						 (cfg::configuration-schema configuration-copy))))))
   			  (:form :action action
   				 :method "post"
   				 (:p "Documentation:")
   				 (with-form-field (field :writer (lambda (val)
  -								   (setf (cfg::documentation* configuration) val)))
  +								   (setf (cfg::documentation* configuration-copy) val)))
   				   (htm
   				    (:textarea :name field
  -					       (str (cfg::documentation* configuration)))))
  +					       (str (cfg::documentation* configuration-copy)))))
   				 (:p "Parents:")
   				 (with-form-field (field :writer (lambda (val)
  -								   (setf (cfg::parents configuration) val))
  +								   (setf (cfg::parents configuration-copy) val))
   							 :reader (lambda (val)
   								   (if (listp val)
   								       (mapcar #'cfg::read-symbol val)
  
positive.code:   (new-configuration stream))
  
  (defun edit-configuration (configuration stream &key (save-as-new t))
    (let ((configuration (cfg::copy-configuration configuration)))
      (labels ((render-editor (errors stream)
  	       (with-html-output (stream)
  		 (with-form (action
  			     :on-submit (lambda ()
  					  (cfg::collecting-validation-errors (errors found-p)
  					      (cfg::validate-configuration configuration)
  					    (if found-p
  						(with-output-to-string (s)
  						  (with-main-page (s)
  						    (render-editor errors s)))
  						(progn
  						  (setf (gethash (cfg::name configuration) cfg::*configurations*)
  							configuration)
  						  (with-output-to-string (s)
  						    (with-main-page (s)
  						      (render-editor errors s))))))))
  		   (htm
  		    (:div :class "configuration-editor"
  			  (when errors
  
negative.code: 				     (:table
  				      (:tbody
  				       (:tr
  					(:td (:p "Name: "))
  					(:td
  					 (with-form-field (field :writer (lambda (val)
  									   (setf save-as-name val)))
  					   (htm
  					    (:input :type "text" :name field)))))
  				       (:tr (:td (:p "Title: "))
  					    (:td
  					     (with-form-field (field :writer (lambda (val)
  									       (setf save-as-title val)))
  					       (htm
  						(:input :type "text" :name field))))))))
  				    (:input :type "submit" :value "Save as new"))))))))))
        (render-editor nil stream))))
  
  