// Compiler options: -t:library public class A { public class B { public class C { public T T; public U U; } } public class B2 { public T T; public class C { public T T2; } } } public static class Factory { public static A.B.C Create_1() { return new A.B.C (); } public static A.B2.C Create_2() { return new A.B2.C (); } public static A.B2 Create_3() { return new A.B2 (); } }