   (reset! core-env
           (reader/read-string (slurp (io/resource "tools.analyzer.js/cached-env.res")))))
 
-(defn setup-rt []
+(defn setup-rt! []
   (require 'cljs.core)
   (when-not (or (seq @core-env)
                 (seq (restore-env)))

      (analyze '(ns cljs.user))
      (reset! core-env (select-keys (:namespaces (env/deref-env)) '[cljs.core cljs.user])))))

(setup-rt)

        core-macro-mappings (apply dissoc (core-macros) (:exclude refer-clojure))
        macro-mappings (reduce (fn [m [ns {:keys [refer]}]]
                                 (c.c/require ns)
                                 (reduce #(let [m (ns-resolve ns (name %2))]
                                            (if (:macro (meta m))
                                              (assoc %1 %2 m)
                                              %1)) m refer))
                               {} require-macros)]

    (swap! *env* assoc-in [:namespaces ns-name]
