i see that the IEqualityComparer interface has Equals(obj x, obj y) and GetHashcode().
I fully understand the Equals() methods because i you have to say if two things are the same or not but why do i need to implement a GetHashCode() method as well?