code: def run(self):
          
          logger.info(
              "The {} strategy will be applied on each duplicate set.".format(
                  self.conf.strategy))
  
          self.stats['set_total'] = len(self.mails)
  
          for hash_key, mail_path_set in self.mails.items():
              # Print visual clue to separate duplicate sets.
              logger.info('---')
  
              duplicates = DuplicateSet(hash_key, mail_path_set, self.conf)
  
              # Perfom the deduplication.
              duplicates.dedupe()
  
              # Merge stats resulting of actions on duplicate sets.
              self.stats += duplicates.stats
docs: Run the deduplication process.
  
          We apply the removal strategy one duplicate set at a time to keep
          memory footprint low and make the log of actions easier to read.