docs: def clean_up(self, dry_run=False, verbosity=1, last_n_days=0,
                   cleanup_path=None, storage=None):
          """
          Iterate through sources. Delete database references to sources
          not existing, including its corresponding thumbnails (files and
          database references).
          """
          if dry_run:
              print ("Dry run...")
  
          if not storage:
              storage = get_storage_class(settings.THUMBNAIL_DEFAULT_STORAGE)()
  
          sources_to_delete = []
          time_start = time.time()
  
          query = Source.objects.all()
          if last_n_days > 0:
              today = date.today()
              query = query.filter(
                  modified__range=(today - timedelta(days=last_n_days), today))
          if cleanup_path:
              query = query.filter(name__startswith=cleanup_path)
  
          for source in queryset_iterator(query):
              self.sources += 1
              abs_source_path = self._get_absolute_path(source.name)
  
              if not self._check_if_exists(storage, abs_source_path):
                  if verbosity > 0:
                      print ("Source not present:", abs_source_path)
                  self.source_refs_deleted += 1
                  sources_to_delete.append(source.id)
  
                  for thumb in source.thumbnails.all():
                      self.thumbnails_deleted += 1
                      abs_thumbnail_path = self._get_absolute_path(thumb.name)
  
                      if self._check_if_exists(storage, abs_thumbnail_path):
                          if not dry_run:
                              storage.delete(abs_thumbnail_path)
                          if verbosity > 0:
                              print ("Deleting thumbnail:", abs_thumbnail_path)
  
              if len(sources_to_delete) >= 1000 and not dry_run:
                  self._delete_sources_by_id(sources_to_delete)
                  sources_to_delete = []
  
          if not dry_run:
              self._delete_sources_by_id(sources_to_delete)
          self.execution_time = round(time.time() - time_start)