  
  class UnicodeJSONRenderer(JSONRenderer):
      ensure_ascii = False
      charset = 'utf-8'
  
  
  class JSONPRenderer(JSONRenderer):
      """
      Renderer which serializes to json,
      wrapping the json output in a callback function.
 
</s> remove         return "%s(%s);" % (callback, json)
 </s> add         return callback.encode(self.charset) + b'(' + json + b');' </s> remove     Renderer which serializes to json.
 </s> add     Renderer which serializes to JSON.
    Applies JSON's backslash-u character escaping for non-ascii characters. </s> remove     charset = 'iso-8859-1'
 </s> add     charset = 'utf-8'
    # Note that JSON encodings must be utf-8, utf-16 or utf-32.
    # See: http://www.ietf.org/rfc/rfc4627.txt </s> remove         Render `obj` into json.
 </s> add         Render `data` into JSON. </s> remove         if not self.ensure_ascii:
 </s> add         # On python 2.x json.dumps() returns bytestrings if ensure_ascii=True,
        # but if ensure_ascii=False, the return type is underspecified,
        # and may (or may not) be unicode.
        # On python 3.x json.dumps() returns unicode strings.
        if isinstance(ret, six.text_type):
    """
    Renderer which serializes to JSON.
    Does *not* apply JSON's character escaping for non-ascii characters.
    """
  
  class UnicodeJSONRenderer(JSONRenderer):
      ensure_ascii = False
      charset = 'utf-8'
    """
    Renderer which serializes to JSON.
    Does *not* apply JSON's character escaping for non-ascii characters.
    """
  
  
  class JSONPRenderer(JSONRenderer):
      """
      Renderer which serializes to json,
      wrapping the json output in a callback function.
keep keep keep add keep keep keep keep keep keep
 Last bits of charset sorting-out-ness 
rest_framework/renderers.py