anchor.diff:  	(if test
   	    (cond ((or (eq test #'eq) (eq test 'eq))
   		   (if use-hash
  -		       (intersection-key-eq-hash list1 list2 key)
  -		       (intersection-key-eq list1 list2 key)))
  +		       (intersection-key-eq-hash 'nintersection list1 list2 key)
  +		       (intersection-key-eq 'nintersection list1 list2 key)))
   		  ((or (eq test #'eql) (eq test 'eql))
   		   (if use-hash
  -		       (intersection-key-eql-hash list1 list2 key)
  -		       (intersection-key-eql list1 list2 key)))
  +		       (intersection-key-eql-hash 'nintersection list1 list2 key)
  +		       (intersection-key-eql 'nintersection list1 list2 key)))
   		  ((or (eq test #'equal) (eq test 'equal))
   		   (if use-hash
  -		       (intersection-key-equal-hash list1 list2 key)
  -		       (intersection-key-test list1 list2 key #'equal)))
  +		       (intersection-key-equal-hash 'nintersection list1 list2 key)
  +		       (intersection-key-test 'nintersection list1 list2 key #'equal)))
   		  ((or (eq test #'equalp) (eq test 'equalp))
   		   (if use-hash
  -		       (intersection-key-equalp-hash list1 list2 key)
  -		       (intersection-key-test list1 list2 key #'equalp)))
  +		       (intersection-key-equalp-hash 'nintersection list1 list2 key)
  +		       (intersection-key-test 'nintersection list1 list2 key #'equalp)))
   		  (t
  -		   (intersection-key-test list1 list2 key test)))
  +		   (intersection-key-test 'nintersection list1 list2 key test)))
   	    (if test-not
  -		(intersection-key-test-not list1 list2 key test-not)
  +		(intersection-key-test-not 'nintersection list1 list2 key test-not)
   		(if use-hash
  -		    (intersection-key-eql-hash list1 list2 key)
  -		    (intersection-key-eql list1 list2 key))))
  +		    (intersection-key-eql-hash 'nintersection list1 list2 key)
  +		    (intersection-key-eql 'nintersection list1 list2 key))))
   	(if test
   	    (cond ((or (eq test #'eq) (eq test 'eq))
   		   (if use-hash
  -		       (intersection-identity-eq-hash list1 list2)
  -		       (intersection-identity-eq list1 list2)))
  +		       (intersection-identity-eq-hash 'nintersection list1 list2)
  +		       (intersection-identity-eq 'nintersection list1 list2)))
   		  ((or (eq test #'eql) (eq test 'eql))
   		   (if use-hash
  -		       (intersection-identity-eql-hash list1 list2)
  -		       (intersection-identity-eql list1 list2)))
  +		       (intersection-identity-eql-hash 'nintersection list1 list2)
  +		       (intersection-identity-eql 'nintersection list1 list2)))
   		  ((or (eq test #'equal) (eq test 'equal))
   		   (if use-hash
  -		       (intersection-identity-equal-hash list1 list2)
  -		       (intersection-identity-test list1 list2 #'equal)))
  +		       (intersection-identity-equal-hash 'nintersection list1 list2)
  +		       (intersection-identity-test 'nintersection list1 list2 #'equal)))
   		  ((or (eq test #'equalp) (eq test 'equalp))
   		   (if use-hash
  -		       (intersection-identity-equalp-hash list1 list2)
  -		       (intersection-identity-test list1 list2 #'equalp)))
  +		       (intersection-identity-equalp-hash 'nintersection list1 list2)
  +		       (intersection-identity-test 'nintersection list1 list2 #'equalp)))
   		  (t
  -		   (intersection-identity-test list1 list2 test)))
  +		   (intersection-identity-test 'nintersection list1 list2 test)))
   	    (if test-not
  -		(intersection-identity-test-not list1 list2 test-not)
  +		(intersection-identity-test-not 'nintersection list1 list2 test-not)
   		(if use-hash
  -		    (intersection-identity-eql-hash list1 list2)
  -		    (intersection-identity-eql list1 list2)))))))
  +		    (intersection-identity-eql-hash 'nintersection list1 list2)
  +		    (intersection-identity-eql 'nintersection list1 list2)))))))
   
   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
   ;;;
  
positive.code: 	(if test
  	    (cond ((or (eq test #'eq) (eq test 'eq))
  		   (if use-hash
  		       (union-key-eq-hash list1 list2 key)
  		       (union-key-eq list1 list2 key)))
  		  ((or (eq test #'eql) (eq test 'eql))
  		   (if use-hash
  		       (union-key-eql-hash list1 list2 key)
  		       (union-key-eql list1 list2 key)))
  		  ((or (eq test #'equal) (eq test 'equal))
  		   (if use-hash
  		       (union-key-equal-hash list1 list2 key)
  		       (union-key-test list1 list2 key #'equal)))
  		  ((or (eq test #'equalp) (eq test 'equalp))
  		   (if use-hash
  		       (union-key-equalp-hash list1 list2 key)
  		       (union-key-test list1 list2 key #'equalp)))
  		  (t
  		   (union-key-test list1 list2 key test)))
  	    (if test-not
  		(union-key-test-not list1 list2 key test-not)
  		(if use-hash
  		    (union-key-eql-hash list1 list2 key)
  		    (union-key-eql list1 list2 key))))
  	(if test
  	    (cond ((or (eq test #'eq) (eq test 'eq))
  		   (if use-hash
  		       (union-identity-eq-hash list1 list2)
  		       (union-identity-eq list1 list2)))
  		  ((or (eq test #'eql) (eq test 'eql))
  		   (if use-hash
  		       (union-identity-eql-hash list1 list2)
  		       (union-identity-eql list1 list2)))
  		  ((or (eq test #'equal) (eq test 'equal))
  		   (if use-hash
  		       (union-identity-equal-hash list1 list2)
  		       (union-identity-test list1 list2 #'equal)))
  		  ((or (eq test #'equalp) (eq test 'equalp))
  		   (if use-hash
  		       (union-identity-equalp-hash list1 list2)
  		       (union-identity-test list1 list2 #'equalp)))
  		  (t
  		   (union-identity-test list1 list2 test)))
  	    (if test-not
  		(union-identity-test-not list1 list2 test-not)
  		(if use-hash
  		    (union-identity-eql-hash list1 list2)
  		    (union-identity-eql list1 list2)))))))
  
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;;;
  
negative.code: ;;; Function member-if-not
  
  (defun member-if-not-identity (predicate list)
    (with-proper-list-rests (rest list 'member-if-not)
      (unless (funcall predicate (car rest))
        (return rest))))
  
  (defun member-if-not-key (predicate list key)
    (with-proper-list-rests (rest list 'member-if-not)
      (unless (funcall predicate (funcall key (car rest)))
        (return rest))))
  
  