                      (log/debug (str "it2lex: " (count
                                                  (get it2lex (get-in spec [:italiano :italiano]
                                                                      ::undefined)))))
-                     (log/debug (str "infl2lex: " (count
-                                                   (get infl2lex (get-in spec [:synsem :infl]
-                                                                         ::undefined)))))
                      (log/debug (str "pred2lex: " (count
                                                    (get pred2lex (get-in spec [:synsem :sem :pred]
                                                                          ::undefined)))))

                     (let [result
                           (reduce intersection-with-identity
                                   (filter #(not (empty? %))
                                           [(get aux2lex (get-in spec [:synsem :aux] ::undefined))
                                            (get cat2lex (get-in spec [:synsem :cat] ::undefined))
                                            (get infl2lex (get-in spec [:synsem :infl] ::undefined))
                                            (get it2lex (get-in spec [:italiano :italiano] ::undefined))
                                            (get pred2lex (get-in spec [:synsem :sem :pred] ::undefined))]))]
                       (log/debug (str "intersection size: " (count result)))
                       result)))
                       

                                                  (sort (map #(fo %)
                                                             (get cat2lex (get-in spec [:synsem :cat]
                                                                                  ::undefined)))))))
                     (log/trace (str "pred2lex: " (clojure.string/join
                                                   ","
                                                   (sort (map #(fo %)
