/// <summary>
        /// Version of FindLocation that searches using a LatLong object
        /// </summary>
        /// <param name="aLatLong">a LatLong</param>
        /// <returns></returns>
        public Location FindLocation(LatLong aLatLong)
        {
            Location[] location = null;

            try
            {
                if (aLatLong == null)
                {
                    throw new System.ArgumentNullException("LatLong cannot be null");
                }

                //OK find something
                FindSpecification fs = new FindSpecification();
                fs.DataSourceName = "MapPoint.NA";

                LatLong        locationLatLong = aLatLong;
                GetInfoOptions infoOptions     = new GetInfoOptions();

                location = theMapPointFindService.GetLocationInfo(locationLatLong,
                                                                  MAPPOINT_NA, infoOptions);
            }
            catch (ArgumentNullException e)
            {
                throw e;  // rethrow for app to handle
            }
            catch (Exception e)
            {
                throw e;  // rethrow for app to handle
            }


            return(location[0]);  // zero position should be the best match
        }