__eq__ & hash for set check