location with distance and callback