   (if (list? symbol-or-list)
     (second symbol-or-list)
     symbol-or-list))
-
-(defn disable-unload! [ns]
-  (alter-var-root #'disabled-unload-namespaces conj (maybe-quoted->symbol ns)))
-
-(defn disable-reload! [ns]
-  (alter-var-root #'disabled-load-namespaces conj (maybe-quoted->symbol ns)))
-
-(defn clear! []
-  (alter-var-root #'refresh-tracker (constantly (track/tracker))))
-
-(defn print-disabled []
-  (prn "disabled unload" disabled-unload-namespaces)
-  (prn "disabled reload" disabled-load-namespaces))
 
 (defn wrap [f]
   (fn g


     'print-disabled
     (wrap (fn [& _]
             (print-disabled)))

     'disable-unload!
     (wrap (fn [_ _ [_ my-ns] _]
             (disable-unload! my-ns)))

     'disable-reload!
     (wrap (fn [_ _ [_ my-ns] _]
             (disable-reload! my-ns)))

     'clear
     (wrap (fn [_ _ _ _]
             (clear!)))}))

            [cljs.env :as env]
            [cljs.repl :as repl]
            [clojure.string :as str]))

(defprotocol IRefresh
  (-initialize [this opts])
