work with cache