          elif hasattr(value, '__iter__') and not isinstance(value, (dict, basestring)):
              return [self.to_native(item) for item in value]
          elif isinstance(value, dict):
              return dict(map(self.to_native, (k, v)) for k, v in value.items())
          return smart_unicode(value)
  
      def attributes(self):
          """
          Returns a dictionary of attributes to be used when serializing to xml.
          """
 
</s> remove         elif hasattr(value, '__iter__') and not isinstance(value, (dict, basestring)):
 </s> add         elif hasattr(value, '__iter__') and not isinstance(value, (dict, six.string_types)): </s> remove     if isinstance(val, basestring):
 </s> add     if isinstance(val, string_types): </s> remove                     if value == smart_unicode(k2):
 </s> add                     if value == smart_text(k2): </s> remove                     raise TypeError(u"You tried to pass in the %s method name as a "
                                    u"keyword argument to %s(). Don't do that."
 </s> add                     raise TypeError("You tried to pass in the %s method name as a "
                                    "keyword argument to %s(). Don't do that." </s> remove     return mark_safe(u''.join(words))
 </s> add     return mark_safe(''.join(words))
        return smart_text(value)
          elif hasattr(value, '__iter__') and not isinstance(value, (dict, basestring)):
              return [self.to_native(item) for item in value]
          elif isinstance(value, dict):
              return dict(map(self.to_native, (k, v)) for k, v in value.items())
        return smart_text(value)
  
      def attributes(self):
          """
          Returns a dictionary of attributes to be used when serializing to xml.
          """
keep keep keep keep replace keep keep keep keep keep
 First passing test under p3k \o/ 
rest_framework/fields.py