add low-level caching to 2 helpers
remove page-level caching