(define member? (lambda (a l) (cond ((null? l) #f) ((equal? a (car l)) #t) (else (member? a (cdr l)))))) (define (flatten l) (cond ((null? l) l) ((not (list? l)) (cons l '())) (else (append (flatten (car l)) (flatten (cdr l)))))) (define (map f l) (cond ((null? l) l) (else (cons (apply f (car l)) (map f (cdr l)))))) (define (remove a l) (cond ((null? l) l) ((equal? a (car l)) (remove a (cdr l))) (else (cons (car l) (remove a (cdr l)))))) (define (nodups l) (cond ((null? l) l) (else (let ((a (car l))) (cons a (nodups (remove a (cdr l))))))))