using System; class Program { public class Foo { public static bool MG (Foo t) { return false; } } public class Bar { public static Bar Create (Func a) { return null; } public static Bar Create (Func a, Func b = null) { throw new ApplicationException (); } } static void Main () { var x = Bar.Create (Foo.MG); } }