anchor.diff:  (deftype write-func-type ()
     '(function ((unsigned-byte 8)) t))
   
  -(deftype lookahead-func-type ()
  -  '(function (fixnum) t))
  -
   (defun in-window-p (offset code-point)
     (declare (type unicode-code-point offset code-point))
     (<= offset code-point (+ offset #x7f)))
  
positive.code: 	       (funcall write-func hbyte)
  	       (funcall write-func lbyte)))))))
  
  (defun encode-SMP-as-surrogate-pair (state code-point next-code-point write-func lookahead-func)
    (declare (type unicode-code-point code-point next-code-point))
    (multiple-value-bind (high low)
        (encode-to-surrogate-pair code-point)
      (declare (type (unsigned-byte 16) high low))
      (encode-unit* state high low write-func lookahead-func)
      (encode-unit* state low next-code-point write-func lookahead-func)))
  
  (defun encoded-1byte-p (state code-point &optional (window (scsu-state-active-window-index state)))
    (declare (type (or null unicode-code-point) code-point)
  
negative.code: 	  ;; goto unicode-mode.
  	  (funcall write-func +SCU+)
  	  (setf (scsu-state-mode state) :unicode-mode)
  	  (encode-unit* state code-point next-code-point write-func)))))))
  
  (defun encode-unit*/unicode-mode (state code-point next-code-point write-func)
    (declare (type unicode-code-point code-point next-code-point)
  	   (type write-func-type write-func))
    (cond ((<= code-point #x7F)		; Basic Latin
  	 (setf (scsu-state-mode state) :single-byte-mode)
  	 (funcall write-func (+ +UC0+ (scsu-state-active-window-index state)))
  	 (encode-unit* state code-point next-code-point write-func))
  	((let ((dwindow	(find-suitable-dynamic-window state code-point))) ; in dynamic window
  	   (when (and dwindow
  		      (encoded-1byte-p state next-code-point dwindow))
  