 
 (defn- initialize-exhibit3 [MODULES AUXMODULES]
   "Initialize Exhibit3 database and UI for Module Finder page"
-  (if (and (not (aget js/window "Exhibit3_Initialized"))
-           (aget js/window "Exhibit3_Loaded")
+  (if (and (not EXHIBIT3-INITIALIZED?)
+           EXHIBIT3-LOADED?
            MODULE-FINDER-SCRIPTS-DLED?
            (= (aget js/window "ActiveTab") MODULEFINDER-TAB-INDEX))
     (let [$timetable-builder-tab-link ($ :#timetable-builder-tab-link)]
-      (aset js/window "Exhibit3_Initialized" true)
+      (set! EXHIBIT3-INITIALIZED? true)
       ; Unbind the click event handler for `Timetable Builder` tab link so
       ; the user cannot switch tabs when we are initializing Exhibit3 here and
       ; screw things up

            [cljs-nusmods.select2               :as select2]
            [cljs-nusmods.time                  :as time-helper]
            [cljs-nusmods.timetable             :as timetable]))

(defn- getScript
  "Wrapper for $.getScript"

  (.log js/console "In `check-and-initialize-exhibit3`")
  (.log js/console (str "INITIALIZE-EXHIBIT3-INTERVAL-VAL = "
                        INITIALIZE-EXHIBIT3-INTERVAL-VAL))
  (if EXHIBIT3-INITIALIZED?
      (do
        (.log js/console "Exhibit3 initialized, clearing interval")
        (js/clearInterval INITIALIZE-EXHIBIT3-INTERVAL-VAL)
