What two statements are true about properly overridden hashCode() and equals() methods
hashCode() doesn't have to be overridden if equals() is
equals() doesn't have to be overridden if hashCode() is
hashCode() can always return the same value, regardless of the object that invoked it
equals() can be true even if it's comparing different objects