docs: def diff(self, obj=None):
          """Determine if something has changed or not"""
          if self.no_resource:
              return NOOP
  
          if not self.present:
              if self.existing:
                  return DEL
  
              return NOOP
  
          if not obj:
              obj = self.obj()
  
          is_diff = NOOP
          if self.present and self.existing:
              if isinstance(self.existing, dict):
                  current = dict(self.existing)
                  if 'refresh_interval' in current:
                      del current['refresh_interval']
  
                  if diff_dict(current, obj):
                      is_diff = CHANGED
              elif is_unicode(self.existing):
                  if self.existing != obj:
                      is_diff = CHANGED
  
          elif self.present and not self.existing:
              is_diff = ADD
  
          return is_diff