         callback.call thisArg, v, k, cache
       return
     forEachLRU: forEachLRU=(callback, thisArg)->
-      setImmediate clearExpires if cleanInterval > 0 and Date.now() - lastCleanTime >= clearExpires
+      setImmediate clearExpires if cleanInterval > 0 and Date.now() - lastCleanTime >= cleanInterval
       for k,v of _cacheLRU
         callback.call thisArg, v, k, cache if not isExpired k
       return

      _cache[id] = value
      cache.emit(event, id, value, oldValue)
    setLRU: setLRU = (id, value, expires)->
      setImmediate clearExpires if cleanInterval > 0 and Date.now() - lastCleanTime >= clearExpires
      if hasOwnProperty.call(_cacheLRU, id)
        oldValue = _cacheLRU[id]
        if expires <= 0

      if hasOwnProperty.call(_cache, id)
        _cache[id]
    isExpired: isExpired = (id)->
      if cleanInterval > 0 and Date.now() - lastCleanTime >= cleanInterval
        setImmediate clearExpires
      else
        expires = _cacheExpired[id]
