4 public interface IY : IX {}
7 public override string ToString () {
13 public override string ToString () {
22 public interface IB : IA {
26 public interface IC : IB {
32 get { return new X (); }
36 public class B : A, IA, IB {
38 get { return new Y (); }
42 get { return new Y (); }
46 public class C : B, IC {
50 static int Main(string[] args) {
53 if (w.ToString () == "Y") {
58 Console.WriteLine (w.ToString ());