using System;
public class Program
{
public static void Main()
Foo1 x = new Foo1();
x.foo(new SpecialString());
x.foo(new BasicString());
}
class BasicString {
class SpecialString: BasicString {
interface Foo {
void foo(SpecialString a);
class Base {
public void foo(BasicString a) {
class Foo1: Base, Foo {
public void foo(SpecialString a) {