adding clojures and prototypes