  
          if not self.connection.features.supports_microsecond_precision:
              value = value.replace(microsecond=0)
  
          return six.text_type(value)
  
      def adapt_timefield_value(self, value):
          if value is None:
              return None
  
 
</s> remove         return six.text_type(value)
 </s> add         return str(value) </s> remove         if isinstance(value, six.string_types) or value is None:
 </s> add         if isinstance(value, str) or value is None: </s> remove         return six.text_type(value)
 </s> add         return str(value) </s> remove         return six.text_type(value)
 </s> add         return str(value) </s> remove         return six.text_type(value)
 </s> add         return str(value)
        return str(value)
  
          if not self.connection.features.supports_microsecond_precision:
              value = value.replace(microsecond=0)
  
        return str(value)
  
      def adapt_timefield_value(self, value):
          if value is None:
              return None
  
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/db/backends/mysql/operations.py