              self.bcc = list(bcc)
          else:
              self.bcc = []
          if reply_to:
              if isinstance(reply_to, six.string_types):
                  raise TypeError('"reply_to" argument must be a list or tuple')
              self.reply_to = list(reply_to)
          else:
              self.reply_to = []
          self.from_email = from_email or settings.DEFAULT_FROM_EMAIL
 
</s> remove             if isinstance(bcc, six.string_types):
 </s> add             if isinstance(bcc, str): </s> remove             if isinstance(cc, six.string_types):
 </s> add             if isinstance(cc, str): </s> remove             if isinstance(to, six.string_types):
 </s> add             if isinstance(to, str): </s> remove         if isinstance(self.remote_field.model, six.string_types):
 </s> add         if isinstance(self.remote_field.model, str): </s> remove         if isinstance(srid, six.integer_types) or srid is None:
 </s> add         if isinstance(srid, int) or srid is None:
            if isinstance(reply_to, str):
              self.bcc = list(bcc)
          else:
              self.bcc = []
          if reply_to:
            if isinstance(reply_to, str):
                  raise TypeError('"reply_to" argument must be a list or tuple')
              self.reply_to = list(reply_to)
          else:
              self.reply_to = []
          self.from_email = from_email or settings.DEFAULT_FROM_EMAIL
keep keep keep keep replace keep keep keep keep keep
 Refs #23919 -- Removed six.<various>_types usage

Thanks Tim Graham and Simon Charette for the reviews. 
django/core/mail/message.py