added a localstorage based cache for user values