(let* ((ggg (fff (list (cons nil aaa)))) (hhh (mapcar (lambda (x) (car x)) ggg))) (remove-if-not (lambda (x) (and (funcall (iii (position 'A x)) (> (position 'D x) 1)) (funcall (iii (position 'B x)) (= (position 'A x) 1)) (funcall (iii (position 'C x)) (> (position 'E x) 1)) (funcall (iii (position 'D x)) (= (position 'C x) 1)) (funcall (iii (position 'E x)) (< (position 'B x) 2)))) hhh)) ((D C B E A) (D C E B A) (D C A E B) (D C E A B) (D C A B E) (D C B A E))