class LRUMap implements Map<K, V> {

	@Override
	public V remove(Object key) {
		Entry<K, V> entry = map.remove(key);
		modificationID++;
		if (entry != null) {
			removeEntry(entry);
			return entry.value;
		}
		return null;
	}

	public  LRUMap(int cacheSize);

}