add cache for cover