there could be more than one `cache`