.WithCache is generic now