 
 
 (defn- props [instance]
-  (.. instance -props -cljs))
+  (aget (.. instance -props) "cljs"))
 
 
 (defn- maybe-report-state-change [instance new-state]

  IDeref
  (-deref [this]
    (when-let [state (.. instance -state)]
      (.. state -cljs)))
  ISwap
  (-swap! [this f] (atom-like-state-swap! instance f))
  (-swap! [this f a] (atom-like-state-swap! instance f a))

        (let [js-props #js{}
              {:keys [ref key]} props
              default-props (aget (.-constructor (.-prototype type)) "defaultProps")
              props (merge (when default-props (aget default-props "cljsDefault"))
                           (dissoc props :ref :key))]
          (aset js-props "cljs" props)
          (if-not-optimized (aset js-props "js" (clj->js props)) nil)
          (when ref (aset js-props "ref" ref))
          (when key (aset js-props "key" key))
          (apply React.createElement type js-props children))))))


