(define eqan?
(lambda (a1 a2)
(cond
((and (number? a1)(number? a2))(= a1 a2))
((or (number? a1)(number? a2)) #f)
(else (eq? a1 a2)))))
(define eqlist?
(lambda(l1 l2)
(cond
((and (null? l1)(null? l2)) #t) ;;l1-null, l2-null
((and (null? l1)(atom? (car l2))) #f) ;;l1-null (car l2)-atom
((null? l1) #f) ;;l1-null, (car l2)-list/(cdr l2)-null, (cdr l2)-atom, (cdr l2)-list
((and (atom? (car l1))(null? l2)) #f) ;; (car l1)-atom, l2-null
((and (atom? (car l1))(atom? (car l2))) ;;(car l1)-atom, (car l2)-atom
(and (eqan? (car l1)(car l2))(eqlist? (cdr l1)(cdr l2))))
((atom? (car l1)) #f) ;;(car l1)-atom, (car l2)-list/(cdr l2)-atom/(cdr l2)-list
;;(car l1)-list, (cdr l1)-list, * (l2-null, (car l2)-null, (car l2)-atom (car l2)-list (cdr l2)-null, (cdr l2)-atom, (cdr l2)-list)
((null? l2) #f)
;;((car l1)-list, (cdr l1)-list) * ((car l2)-null, (car l2)-atom (car l2)-list (cdr l2)-null, (cdr l2)-atom, (cdr l2)-list)
((atom? (car l2)) #f)
;;((car l1)-list, (cdr l1)-list) * ((car l2)-null, (car l2)-list (cdr l2)-null, (cdr l2)-atom, (cdr l2)-list)
(else
(and (eqlist? (car l1)(car l2))(eqlist? (cdr l1)(cdr l2)))))))
KGRlZmluZSBlcWFuPwogIChsYW1iZGEgKGExIGEyKQogICAgKGNvbmQKICAgICAoKGFuZCAobnVtYmVyPyBhMSkobnVtYmVyPyBhMikpKD0gYTEgYTIpKQogICAgICgob3IgKG51bWJlcj8gYTEpKG51bWJlcj8gYTIpKSAjZikKICAgICAoZWxzZSAoZXE/IGExIGEyKSkpKSkKCihkZWZpbmUgZXFsaXN0PwogIChsYW1iZGEobDEgbDIpCiAgICAoY29uZAogICAgICgoYW5kIChudWxsPyBsMSkobnVsbD8gbDIpKSAjdCkgOztsMS1udWxsLCBsMi1udWxsCiAgICAgKChhbmQgKG51bGw/IGwxKShhdG9tPyAoY2FyIGwyKSkpICNmKSA7O2wxLW51bGwgKGNhciBsMiktYXRvbQogICAgICgobnVsbD8gbDEpICNmKSA7O2wxLW51bGwsIChjYXIgbDIpLWxpc3QvKGNkciBsMiktbnVsbCwgKGNkciBsMiktYXRvbSwgKGNkciBsMiktbGlzdAogICAgICgoYW5kIChhdG9tPyAoY2FyIGwxKSkobnVsbD8gbDIpKSAjZikgOzsgKGNhciBsMSktYXRvbSwgbDItbnVsbAogICAgICgoYW5kIChhdG9tPyAoY2FyIGwxKSkoYXRvbT8gKGNhciBsMikpKSA7OyhjYXIgbDEpLWF0b20sIChjYXIgbDIpLWF0b20KICAgICAgKGFuZCAoZXFhbj8gKGNhciBsMSkoY2FyIGwyKSkoZXFsaXN0PyAoY2RyIGwxKShjZHIgbDIpKSkpCiAgICAgKChhdG9tPyAoY2FyIGwxKSkgI2YpIDs7KGNhciBsMSktYXRvbSwgKGNhciBsMiktbGlzdC8oY2RyIGwyKS1hdG9tLyhjZHIgbDIpLWxpc3QKICAgICA7OyhjYXIgbDEpLWxpc3QsIChjZHIgbDEpLWxpc3QsICogKGwyLW51bGwsIChjYXIgbDIpLW51bGwsIChjYXIgbDIpLWF0b20gKGNhciBsMiktbGlzdCAoY2RyIGwyKS1udWxsLCAoY2RyIGwyKS1hdG9tLCAoY2RyIGwyKS1saXN0KQogICAgICgobnVsbD8gbDIpICNmKQogICAgIDs7KChjYXIgbDEpLWxpc3QsIChjZHIgbDEpLWxpc3QpICogKChjYXIgbDIpLW51bGwsIChjYXIgbDIpLWF0b20gKGNhciBsMiktbGlzdCAoY2RyIGwyKS1udWxsLCAoY2RyIGwyKS1hdG9tLCAoY2RyIGwyKS1saXN0KQogICAgICgoYXRvbT8gKGNhciBsMikpICNmKQogICAgIDs7KChjYXIgbDEpLWxpc3QsIChjZHIgbDEpLWxpc3QpICogKChjYXIgbDIpLW51bGwsIChjYXIgbDIpLWxpc3QgKGNkciBsMiktbnVsbCwgKGNkciBsMiktYXRvbSwgKGNkciBsMiktbGlzdCkKICAgICAoZWxzZQogICAgICAoYW5kIChlcWxpc3Q/IChjYXIgbDEpKGNhciBsMikpKGVxbGlzdD8gKGNkciBsMSkoY2RyIGwyKSkpKSkpKQ==