code: def dict(self):
          
          return_obj = {}
          for attr in dir(self):
              if not attr.startswith('__') and attr not in self.__reserved:
                  if isinstance(getattr(self, attr), list):
                      return_val = []
                      for item in getattr(self, attr):
                          if isinstance(item, DictClass):
                              return_val.append(dict(item))
                          else:
                              return_val.append(item)
                  elif isinstance(getattr(self, attr), dict):
                      return_val = {}
                      for key, item in getattr(self, attr).items():
                          if isinstance(item, DictClass):
                              return_val[key] = item.dict()
                          else:
                              return_val[key] = item
                  elif isinstance(getattr(self, attr), DictClass):
                      return_val = getattr(self, attr).dict()
                  else:
                      return_val = getattr(self, attr)
                  return_obj[attr] = return_val
          return return_obj
docs: converts the class to a dictionary object