namespace Stuff {
public class Program {
private static void Main() {
foreach(A a in new A[10]) {
I i=a.MakeB();
i.Blah(); }
}
private interface I {
void Blah();
}
private class A {
public B MakeB() {
return new B();
}
}
private class B : I {
void I.Blah() {}
}
}
}