private static double HaversineInKM(double lat1, double long1, double lat2, double long2)
{
var dlong = (long2 - long1)*d2r;
var dlat = (lat2 - lat1)*d2r;
var a = Math.Pow(Math.Sin(dlat/2D), 2D) + Math.Cos(lat1*d2r)*Math.Cos(lat2*d2r)*Math.Pow(Math.Sin(dlong/2D), 2D);
var c = 2D*Math.Atan2(Math.Sqrt(a), Math.Sqrt(1D - a));
var d = equatorialEarthRadius*c;
return d;
}