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

      (+ start (* n step))
      (if (and (> start end) (= step 0))
        start
        (throw "Index out of bounds"))))
  (-nth [rng n not-found]
    (if (< n (-count rng))
      (+ start (* n step))

  "Returns true if n is even, throws an exception if n is not an integer"
   [n] (if (integer? n)
        (zero? (bit-and n 1))
        (throw (js/Error. (str "Argument must be an integer: " n)))))

(defn odd?
  "Returns true if n is odd, throws an exception if n is not an integer"
