working on caching, reuqesting