Order of location detection. On the client side it checks for value in indexeddb, then it will check sim (if it has access) it takes the results of that and puts it in a url param (?region=blah). On the server side if that url param is empty we fall back to geoip then to Accept-Language header. If it isn't there, we check for a cookie, then fall back to geoip then to Accept-Language.