public static void IfNotEqual <TExpected, TActual>(
     [CanBeNull] TExpected expected,
     [CanBeNull] TActual actual,
     [NotNull][System.Diagnostics.CodeAnalysis.NotNull] string name
     )
 {
     Fail.RequiresArgumentName(name);
     Fail.IfNotEqual(expected, actual, Violation.WhenNotEqual(name, expected, actual));
 }