update to use geolocation