cache results locally