                  # or Decimal based on whether it has a decimal point.
                  value = decimal.Decimal(value)
              else:
                  value = int(value)
          elif desc[1] in (Database.STRING, Database.FIXED_CHAR,
                           Database.LONG_STRING):
              value = to_unicode(value)
          casted.append(value)
      return tuple(casted)
  
  
  def to_unicode(s):
 
</s> remove 

def to_unicode(s):
    """
    Convert strings to Unicode objects (and return all other data types
    unchanged).
    """
    if isinstance(s, six.string_types):
        return force_text(s)
    return s
 </s> add  </s> remove                 if isinstance(items, six.string_types):
 </s> add                 if isinstance(items, str): </s> remove         if value and isinstance(value, six.string_types):
 </s> add         if value and isinstance(value, str): </s> remove         elif value is None or isinstance(value, six.string_types + (six.memoryview,)):
 </s> add         elif value is None or isinstance(value, (str, memoryview)): </s> remove             if not value or not isinstance(value, string_types):
 </s> add             if not value or not isinstance(value, str):
                  # or Decimal based on whether it has a decimal point.
                  value = decimal.Decimal(value)
              else:
                  value = int(value)



          casted.append(value)
      return tuple(casted)
  
  
  def to_unicode(s):
keep keep keep keep replace replace 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/oracle/base.py