no need to only cache on loadState