   (-nth [coll n]
     (if (and (<= 0 n) (< n (.length array)))
       (aget array n)
-      #_(throw (str "No item " n " in vector of length " (.length array)))))
+      #_(throw (js/Error. (str "No item " n " in vector of length " (.length array))))))
   (-nth [coll n not-found]
     (if (and (<= 0 n) (< n (.length array)))
       (aget array n)

      (let [new-array (aclone array)]
        (. new-array (pop))
        (Vector. meta new-array))
      (throw "Can't pop empty vector")))

  ICollection
  (-conj [coll o]

   ([coll n]
      (if-let [xs (nthnext coll n)]
        (first xs)
        (throw (js/Error. "Index out of bounds"))))
   ([coll n not-found]
      (if-let [xs (nthnext coll n)]
        (first xs)
