working on link caching