docs: def create_awards(self, db_read=None, batch_size=None,
                        post_save_signal=True):
          """
          Create awards.
          """
          if not self.can_perform_awarding():
              return
  
          User = get_user_model()
  
          db_read = db_read or self.db_read
          batch_size = batch_size or self.batch_size
  
          unawarded_ids, unawarded_ids_count = self.get_unawarded_user_ids(db_read=db_read)
          obsolete_ids, obsolete_ids_count = self.get_obsolete_user_ids(db_read=db_read)
  
          if obsolete_ids:
              for user_ids in chunks(obsolete_ids, batch_size):
                  obsolete_users = User.objects.using(db_read).in_bulk(user_ids).values()
  
                  signals.pre_delete.disconnect(sender=Award, dispatch_uid=PRE_DELETE_UID)
                  Award.objects.filter(user__in=user_ids).delete()
  
                  logger.debug("→ Badge %s (db_read: %s): unawarded %s",
                               self.slug,
                               db_read,
                               ' '.join(['%s' % user for user in obsolete_users]))
  
          if unawarded_ids:
              for user_ids in chunks(unawarded_ids, batch_size):
                  unwarded_users = User.objects.using(db_read).in_bulk(user_ids).values()
                  objects = [Award(user_id=user_id, badge=self.badge) for user_id in user_ids]
  
                  bulk_create_awards(objects=objects,
                                     batch_size=batch_size,
                                     post_save_signal=post_save_signal)
  
                  logger.debug("→ Badge %s (db_read: %s): awarded %s",
                               self.slug,
                               db_read,
                               ' '.join(['%s' % user for user in unwarded_users]))