May I ask why "contains" method of TreeSet uses the comparator to decide if two objects are equals, but not the equals method of the object? Thank you.