anchor.diff:                             (fsld (%df-first-slot-last-digit extra))
                              (lsfd (%df-last-slot-first-digit extra)))
                          (%print-decimal stream (%df-count-digits length fsld lsfd)
  -                                       slots nil nil nil nil))))))
  +                                       fsld lsfd slots nil nil nil nil))))))
         (multiple-value-bind (digits exponent adj-exponent slots fsld lsfd zerop)
             (parse-info x)
           (setf (values printed-exp dot-position print-plus-p omit-minus-p)
  
positive.code: (defun decimal-dispatch-macro-character (stream char depth)
    (declare (ignore char depth))
    (let ((string (with-output-to-string (output)
                    (loop for char = (read-char stream nil #\  stream)
                       while (or (alphanumericp char)
                                 (member char '(#\+ #\- #\.)))
                       do (write-char char output)))))
      (with-condition-trap-enablers ('(decimal-invalid-operation))
        (parse-decimal string :round-p nil :trim-spaces t))))
  
  
negative.code: 
  (defun parse-decimal (string &key (start 0) (end (length string)) (round-p t)
                        (trim-spaces nil))
    (with-operation (parse-decimal condition (subseq string start end))
        ((decimal-conversion-syntax (make-nan nil nil)))
      (when trim-spaces
        (setf start (or (position-if (complement #'whitespace-p)
  