code: def _make_dav_request(self, method, path, **kwargs):
          
          if self._debug:
              print('DAV request: %s %s' % (method, path))
              if kwargs.get('headers'):
                  print('Headers: ', kwargs.get('headers'))
  
          path = self._normalize_path(path)
          res = self._session.request(
              method,
              self._webdav_url + parse.quote(self._encode_string(path)),
              **kwargs
          )
          if self._debug:
              print('DAV status: %i' % res.status_code)
          if res.status_code in [200, 207]:
              return self._parse_dav_response(res)
          if res.status_code in [204, 201]:
              return True
          raise HTTPResponseError(res)
docs: Makes a WebDAV request
  
          :param method: HTTP method
          :param path: remote path of the targetted file
          :param \*\*kwargs: optional arguments that ``requests.Request.request`` accepts
          :returns array of :class:`FileInfo` if the response
          contains it, or True if the operation succeded, False
          if it didn't