exporting a caching helper