using System.Collections.Generic;
public container(t value,int tags)
pairs=new List<object>();
pairs.Add(CreatePair(value,tags));
public object CreatePair(object t, int tag)
var targetType = typeof (Pair<>).MakeGenericType(type);
return Activator.CreateInstance(targetType, t, tag);
public Pair(T value, int tag)
public static void Main()
Console.WriteLine(new container<string>("o",1));