code: def __diff_obj(self, level, parents_ids=frozenset({}),
                     is_namedtuple=False):
          
          try:
              if is_namedtuple:
                  t1 = level.t1._asdict()
                  t2 = level.t2._asdict()
              else:
                  t1 = level.t1.__dict__
                  t2 = level.t2.__dict__
          except AttributeError:
              try:
                  t1 = self.__dict_from_slots(level.t1)
                  t2 = self.__dict_from_slots(level.t2)
              except AttributeError:
                  self.__report_result('unprocessed', level)
                  return
  
          self.__diff_dict(
              level,
              parents_ids,
              print_as_attribute=True,
              override=True,
              override_t1=t1,
              override_t2=t2)
docs: Difference of 2 objects