public static String EnsureStart(this String str, String start)
{
if (String.IsNullOrEmpty(start)) return str;
if (String.IsNullOrEmpty(str)) return start;
if (str.StartsWith(start, StringComparison.OrdinalIgnoreCase)) return str;
return start + str;
}