anchor.diff:  
   (defmethod uri-string :before ((uri uri))
     (with-slots (string (escape escaped)) uri
  +    ;; if the cached string has been erased, generate a new one.
  +    ;; nb. any canonicalization will render this different than the original
       (when (null string)
         (setf string
               (let ((scheme (uri-scheme uri))
  
positive.code:                     :fragment fragment
                      :escaped escape
                      :userinfo userinfo))))
                  
          uri))))
  
  
  
negative.code: 
    (:method (thing &key (class 'uri) (package *package*) (parse-uri-string *parse-uri-string*)
                    (escape (and *escape-uri-string* (escape-p thing))))
      (multiple-value-bind (scheme host port path query fragment userinfo)
                           (funcall parse-uri-string thing)
        (when scheme
  