no need to try and cache empty sets