class ATop : IA { IA list; T[] IB.ToArray (T[] t) { return null; } void IC.ToArray () { } public void Test () { list = this; list.ToArray (new T [0]); list.ToArray (); } } interface IA : IC, IB { } interface IB : IC { V[] ToArray (V[] array); } interface IC { void ToArray (); } class M { public static int Main () { new ATop().Test (); return 0; } }