main
 1namespace utility
 2{
 3    public class MapKey<Input, Output> : MapKey
 4    {
 5        public bool Equals(MapKey<Input, Output> obj)
 6        {
 7            return !ReferenceEquals(null, obj);
 8        }
 9
10        public override bool Equals(object obj)
11        {
12            if (ReferenceEquals(null, obj)) return false;
13            if (ReferenceEquals(this, obj)) return true;
14            if (obj.GetType() != typeof (MapKey<Input, Output>)) return false;
15            return Equals((MapKey<Input, Output>) obj);
16        }
17
18        public override int GetHashCode()
19        {
20            return GetType().GetHashCode();
21        }
22    }
23
24    public interface MapKey
25    {
26    }
27}