cache implementation can be provided with custom dict object