added user caching