     (if (pos? i)
       (RSeq. ci (dec i) nil)
       ()))
-
+  
   INext
   (-next [coll]
     (when (pos? i)

    (get coll kw not-found))

  IHash
  (-hash [_]
    ; This was checking if _hash == -1, should it stay that way?
    (if (nil? _hash)
      (do
        (set! _hash (+ (hash-combine (hash ns) (hash name))
                        0x9e3779b9))
        _hash)
      _hash))

  INamed
  (-name [_] name)

             other)))

  IHash
  (-hash [coll] (caching-hash coll hash-unordered-coll __hash))

  ISeqable
  (-seq [coll] (keys hash-map))
