code: def from_httplib(ResponseCls, r, **response_kw):
          
  
          headers = HTTPHeaderDict()
          for k, v in r.getheaders():
              headers.add(k, v)
  
          # HTTPResponse objects in Python 3 don't have a .strict attribute
          strict = getattr(r, 'strict', 0)
          return ResponseCls(body=r,
                             headers=headers,
                             status=r.status,
                             version=r.version,
                             reason=r.reason,
                             strict=strict,
                             original_response=r,
                             **response_kw)
docs: Given an :class:`httplib.HTTPResponse` instance ``r``, return a
          corresponding :class:`urllib3.response.HTTPResponse` object.
  
          Remaining parameters are passed to the HTTPResponse constructor, along
          with ``original_response=r``.