I noticed a strange behavior with the "AND" statement.
The construction (cond ((and (setq lst1 (cdr lst)) (= (nth 1 lst1) 3)) ...)
causes an error if lst1 = nil
I knew that the "and" statement does not perform subsequent evaluations of the first nil value it finds.
Is there anything wrong with the construction of the command?