   (:refer-clojure :exclude [atom])
   (:require-macros [reagent.ratom :refer [with-let]])
   (:require [reagent.impl.util :as util]
-            [reagent.debug :refer-macros [dbg log warn dev?]]))
+            [reagent.debug :refer-macros [dbg log warn error dev?]]))
 
 (declare ^:dynamic *ratom-context*)
 (defonce cached-reactions {})

    nil)

  Object
  (_try-run [_ parent]
    (try
      (if-some [ar (.-auto-run parent)]
        (ar parent)
        (run parent))
      (catch :default e
        ;; Just log error: it will most likely pop up again at deref time.
        (when-not silent
          (js/console.error "Error in reaction:" e))
        (set! (.-dirtyness parent) dirty)
        (set! dirtyness dirty))))

  IRunnable
  (run [this]

        (doseq [w watching :while (== dirtyness maybe-dirty)]
          (when (and (instance? Reaction w)
                     (not (-check-clean w)))
            (._try-run w this)))
        (set! auto-run ar))
      (when (== dirtyness maybe-dirty)
        (set! dirtyness clean)))
