anchor.diff:     'type-error
      (substitute 'b 'c '((c) (c)) :start 3 :key #'car)))
   
  -(define-test |substitute seq-type=list start=nil end=nil test=eq count=nil key=identity 1|
  +(define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=identity 1|
     (assert-equal
      '(a a)
      (substitute 'b 'c '(a a) :test #'eq)))
   
  -(define-test |substitute seq-type=list start=nil end=nil test=eq count=nil key=identity 2|
  +(define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=identity 2|
     (assert-equal
      '(b)
      (substitute 'b 'c '(c) :test #'eq)))
   
  -(define-test |substitute seq-type=list start=nil end=nil test=eq count=nil key=identity 3|
  +(define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=identity 3|
     (assert-equal
      '(b)
      (substitute 'b 'c '(b) :test #'eq)))
   
  -(define-test |substitute seq-type=list start=nil end=nil test=eq count=nil key=identity 4|
  +(define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=identity 4|
     (assert-equal
      '(a b)
      (substitute 'b 'c '(a c) :test #'eq)))
   
  -(define-test |substitute seq-type=list start=nil end=nil test=eq count=nil key=identity 5|
  +(define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=identity 5|
     (assert-equal
      '(a b d b)
      (substitute 'b 'c '(a c d c) :test #'eq)))
   
  -(define-test |substitute seq-type=list start=nil end=nil test=eq count=nil key=identity 6|
  +(define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=identity 6|
     (assert-error 
      'type-error
      (substitute 'b 'c 'a :test #'eq)))
   
  -(define-test |substitute seq-type=list start=nil end=nil test=eq count=nil key=identity 7|
  +(define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=identity 7|
     (assert-error
      'type-error
      (substitute 'b 'c '(c a . d) :test #'eq)))
  
positive.code:    'type-error
     (substitute 1 2 '(2 2) :start 3)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 1|
    (assert-equal
     '((0) (0))
     (substitute 1 2 '((0) (0)) :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 2|
    (assert-equal
     '(1)
     (substitute 1 2 '((2)) :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 3|
    (assert-equal
     '((1))
     (substitute 1 2 '((1)) :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 4|
    (assert-equal
     '((0) 1)
     (substitute 1 2 '((0) (2)) :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 5|
    (assert-equal
     '((0) 1 (3) 1)
     (substitute 1 2 '((0) (2) (3) (2)) :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 6|
    (assert-error 
     'type-error
     (substitute 1 2 'a :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 7|
    (assert-error
     'type-error
     (substitute 1 2 '((2) (0) . 3) :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 8|
    (assert-equal
     '((0) (0))
     (substitute 1 2 '((0) (0)) :test #'eql :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 9|
    (assert-equal
     '(1)
     (substitute 1 2 '((2)) :test #'eql :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 10|
    (assert-equal
     '((1))
     (substitute 1 2 '((1)) :test #'eql :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 11|
    (assert-equal
     '((0) 1)
     (substitute 1 2 '((0) (2)) :test #'eql :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 12|
    (assert-equal
     '((0) 1 (3) 1)
     (substitute 1 2 '((0) (2) (3) (2)) :test #'eql :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 13|
    (assert-error 
     'type-error
     (substitute 1 2 'a :test #'eql :key #'car)))
  
  (define-test |substitute seq-type=list start=nil end=nil test=eql count=nil key=other 14|
    (assert-error
     'type-error
     (substitute 1 2 '((2) (0) . 3) :test #'eql :key #'car)))
  
negative.code:    'type-error
     (substitute 'b 'c '(c c) :start 3 :test #'eq)))
  
  (define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=other 1|
    (assert-equal
     '((a) (a))
     (substitute 'b 'c '((a) (a)) :test #'eq :key #'car)))
  
  (define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=other 2|
    (assert-equal
     '(b)
     (substitute 'b 'c '((c)) :test #'eq :key #'car)))
  
  (define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=other 3|
    (assert-equal
     '((b))
     (substitute 'b 'c '((b)) :test #'eq :key #'car)))
  
  (define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=other 4|
    (assert-equal
     '((a) b)
     (substitute 'b 'c '((a) (c)) :test #'eq :key #'car)))
  
  (define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=other 5|
    (assert-equal
     '((a) b (3) b)
     (substitute 'b 'c '((a) (c) (3) (c)) :test #'eq :key #'car)))
  
  (define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=other 6|
    (assert-error 
     'type-error
     (substitute 'b 'c 'a :test #'eq :key #'car)))
  
  (define-test |substitute seq-type=list start=0 end=nil test=eq count=nil key=other 7|
    (assert-error
     'type-error
     (substitute 'b 'c '((c) (a) . 3) :test #'eq :key #'car)))
  