using System;
using System.Collections.Generic;
public class Program
{
public static void Main()
var list = new ABList<dynamic>();
}
public interface X { void Foo(); }
public interface Y { void Bar(); }
public class A : X, Y
public void Foo() {}
public void Bar() {}
public class B : X, Y
public class ABList<T> : List<T> where T : X, Y
// implement me