anchor.diff:               (subseq *kill-ring* 0 *kill-ring-max*)))
        (setq *kill-ring-yank-ptr* *kill-ring*)
        (setq *kill-new-flag* nil)
  -     (%clipboard string))
  +     (clipboard-set string))
       (t
  -     (%clipboard (kill-append string *kill-before-p*))))
  +     (clipboard-set (kill-append string *kill-before-p*))))
     t)
   
   (defun current-kill-ring ()
  -  (let ((string (%clipboard)))
  -    (if (and string (string/= string ""))
  -        string
  -        (kill-ring-nth 1))))
  +  (clipboard-get
  +   (lambda (string)
  +     (if (and string (string/= string ""))
  +         string
  +         (kill-ring-nth 1)))))
   
   (defun kill-ring-nth (n)
     (do ((ptr *kill-ring-yank-ptr*
  
positive.code: 
  (defun kill-ring-new ()
    (setf *kill-new-flag* t))
  
negative.code:                          (car *kill-ring*)
                           string))))
  
  (defun kill-push (string)
    (cond
      (*kill-new-flag*
  