added clojure realisation