added caching on remote server