do geocoding client side