Generic C# Tutorial

interface IPair
{
    T First
    {
        get;
        set;
    }
    T Second
    {
        get;
        set;
    }
}
public struct Pair: IPair
{
    public T First
    {
        get
        {
            return _First;
        }
        set
        {
            _First = value;
        }
    }
    private T _First;
    public T Second
    {
        get
        {
            return _Second;
        }
        set
        {
            _Second = value;
        }
    }
    private T _Second;
}