<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def create_stopword_list(self, environment_id, collection_id, stopword_file, stopword_filename=None, **kwargs):
 """ Create stopword list. Upload a custom stopword list to use with the specified collection. :param str environment_id: The ID of the environment. :param str collection_id: The ID of the collection. :param file stopword_file: The content of the stopword list to ingest. :param str stopword_filename: The filename for stopword_file. :param dict headers: A `dict` containing the request headers :return: A `DetailedResponse` containing the result, headers and HTTP status code. :rtype: DetailedResponse """


        if environment_id is None:
            raise ValueError('environment_id must be provided')
        if collection_id is None:
            raise ValueError('collection_id must be provided')
        if stopword_file is None:
            raise ValueError('stopword_file must be provided')

        headers = {}
        if 'headers' in kwargs:
            headers.update(kwargs.get('headers'))
        sdk_headers = get_sdk_headers('discovery', 'V1', 'create_stopword_list')
        headers.update(sdk_headers)

        params = {'version': self.version}

        form_data = {}
        if not stopword_filename and hasattr(stopword_file, 'name'):
            stopword_filename = basename(stopword_file.name)
        if not stopword_filename:
            raise ValueError('stopword_filename must be provided')
        form_data['stopword_file'] = (stopword_filename, stopword_file,
                                      'application/octet-stream')

        url = '/v1/environments/{0}/collections/{1}/word_lists/stopwords'.format(
            *self._encode_path_vars(environment_id, collection_id))
        response = self.request(
            method='POST',
            url=url,
            headers=headers,
            params=params,
            files=form_data,
            accept_json=True)
        return response