/*
 * This class represents a pair of two objects, which can be of different types
*/
public class Tuple<A, B, C> {
	public Tuple(A first, B second, C third) {
        this._1 = first;
        this._2 = second;
		this._3 = third;
    }

    public A _1 { get; set; }
    public B _2 { get; set; }
    public C _3 { get; set; }
}