        "Circular Seq"
        was-visited)
      (let [out (array)]
-       (visit! visited obj out)
+       (swap! visited assoc obj out)
        (array-append out (map #(->js % flat visited) obj)))))
 
   ([obj flat] (seq->js obj flat (atom {})))

       "Circular Map"
       was-visited)
     (let [out (js-obj)]
       (visit! visited obj out)
       (dorun
        (map
         #(let [key (->js (first %)  flat visited)

    (.push arr v))
  arr)

;;***************************************************************************
;; ->js
;;***************************************************************************
