           (save-iyye-type-to-db type)))))
 
 (defn check-params [action params]
-  (let [act-params (:Types action)]
-    (compare act-params (map #(:Name (:atom %)) params))))  ; FIXME Yumzya context aware compare
+  (let [act-params (:Types action)
+        params-types (map #(get-supertypes %) params)
+        ;   vec-params (vec (map #(:Name (:atom %)) params))
+        pairs (map vector act-params params-types)
+        ok (every? true? (for [cur pairs]
+                  (if (= :UNKNOWN (first cur))
+                    (empty? (second cur))
+                    (some true? (map #(= (first cur) %) (map :Name (second cur)))))))]
+    ;   (future (Thread/sleep 1000) (ioframes/process-output IO (str "okok " ok)))
+    ok)
+    ;(compare act-params vec-params)
+    )  ; FIXME Yumzya context aware compare
 
 (defn apply-relation [relation params]
   (when (check-params relation params)

        relation (->Iyye_Relation action-atom Predicate Types Function PredicateFunction [])]
    relation))

(defn create-iyye-instance [values])

(defn load-iyye-atom-from-db [uname])

; Iyye - AI agent
; Copyright (C) 2016-2018  Sasha Yumzya

; This program is free software: you can redistribute it and/or modify
; it under the terms of the GNU Affero General Public License as
