refactor LRUCache