add an LRU cache