using System;
public interface I { void Go(); }
public class A : I
{
public void Go() { Console.WriteLine("A.Go()"); }
}
public class B : A { }
public class C : B, I
public new void Go() { Console.WriteLine("C.Go()"); }
public class Program
public static void Main()
B b1 = new B();
C c1 = new C();
B b2 = c1;
b1.Go();
c1.Go();
b2.Go();
((I)b2).Go();