    
    (or
     (and
-     (not (= :none (fs/get-in arg '(:head :italiano) :none)))
-     (not (= :none (fs/get-in arg '(:comp :italiano) :none))))
+     (not (= :none (fs/get-in arg '(:head :english) :none)))
+     (not (= :none (fs/get-in arg '(:comp :english) :none))))
+    (and
+     (not (= :none (fs/get-in arg '(:head :espanol) :none)))
+     (not (= :none (fs/get-in arg '(:comp :espanol) :none))))
     (and
      (not (= :none (fs/get-in arg '(:head :français) :none)))
      (not (= :none (fs/get-in arg '(:comp :français) :none))))
     (and
-     (not (= :none (fs/get-in arg '(:head :english) :none)))
-     (not (= :none (fs/get-in arg '(:comp :english) :none)))))
+     (not (= :none (fs/get-in arg '(:head :italiano) :none)))
+     (not (= :none (fs/get-in arg '(:comp :italiano) :none)))))
    
    (or
     (and (fs/ref= arg '(:head :italiano) '(:italiano :a))
          (fs/ref= arg '(:comp :italiano) '(:italiano :b)))
+
     (and (fs/ref= arg '(:head :français) '(:français :a))
          (fs/ref= arg '(:comp :français) '(:français :b)))
+
+    (and (fs/ref= arg '(:head :espanol) '(:espanol :a))
+         (fs/ref= arg '(:comp :espanol) '(:espanol :b)))
+
     (and (fs/ref= arg '(:head :english) '(:english :a))
          (fs/ref= arg '(:comp :english) '(:english :b)))))]
     retval))

   (map? arg)
   
   (not (= :subcat (last path)))
   (not (= :italiano (last path)))
   (not (= :français (last path)))
   (not (= :english (last path)))
   
   (not (= :none (:head arg :none)))
   (not (= :none (:comp arg :none)))

   (not (= :subcat (last path)))
   (not (= :italiano (last path)))
   (not (= :english (last path)))
   (not (= :espanol (last path)))
   (not (= :français (last path)))
   
   (not (= :none (:head arg :none)))
