public override async Task Load()
        {
            CameraTarget = _locationManager.LastKnownLocation;
            await CameraLocationChanged(_locationManager.LastKnownLocation);

            CameraStartMoving
            .Do(moving => IsSearching = moving)
            .Subscribe();

            CameraPositionChanged
            .Do(async location => await CameraLocationChanged(location))
            .Subscribe();
        }
        public override Task Load()
        {
            CameraStartMoving
            .Do(_ => IsSearching = true)
            .Subscribe();

            CameraPositionChanged
            .ObserveOn(_schedulerProvider.DefaultScheduler)
            .Do(async location =>
            {
                var address     = await _geocodingProvider.ReverseGeocodingFromLocation(location);
                SearchText      = address.FormattedAddress;
                _currentAddress = address;

                IsSearching = false;
            }).Subscribe();

            return(base.Load());
        }