public static void Main(string[] args)
    {
        // setup test data
        var ManSet = new HashSet <Man>();

        // check test data
        Contract.Assert(FuncClass.Id(ManSet).Count() == 0, "Assertion");
    }
    public static void Main(string[] args)
    {
        // setup test data
        var ManSet = new HashSet <Man>();

        // check test data
        var tmp = new HashSet <Tuple <Man, Man> >();
        var man = new Man();

        tmp.Add(Tuple.Create <Man, Man>(new Man(), man));
        tmp.Add(Tuple.Create <Man, Man>(new Man(), man));
        Contract.Assert(FuncClass.Id(tmp).Count() == 2, "Assertion");
    }