(doseq(w(cdr(remove-duplicates`("",@(set'x(sort(loop while(listen)nconc(mapcar(lambda(s)(delete-if-not'alpha-char-p s))(asdf::split(read-line))))'string-lessp))):test'equalp)))(format t"~D ~(~A~) "(count w x :test'equalp)w))