<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_multireddit(self, name, description_md=None, icon_name=None, key_color=None, subreddits=None, visibility=None, weighting_scheme=None, overwrite=False, *args, **kwargs):
 # pylint: disable=W0613 """Create a new multireddit. :param name: The name of the new multireddit. :param description_md: Optional description for the multireddit, formatted in markdown. :param icon_name: Optional, choose an icon name from this list: ``art and design``, ``ask``, ``books``, ``business``, ``cars``, ``comics``, ``cute animals``, ``diy``, ``entertainment``, ``food and drink``, ``funny``, ``games``, ``grooming``, ``health``, ``life advice``, ``military``, ``models pinup``, ``music``, ``news``, ``philosophy``, ``pictures and gifs``, ``science``, ``shopping``, ``sports``, ``style``, ``tech``, ``travel``, ``unusual stories``, ``video``, or ``None``. :param key_color: Optional rgb hex color code of the form `#xxxxxx`. :param subreddits: Optional list of subreddit names or Subreddit objects to initialize the Multireddit with. You can always add more later with :meth:`~praw.objects.Multireddit.add_subreddit`. :param visibility: Choose a privacy setting from this list: ``public``, ``private``, ``hidden``. Defaults to private if blank. :param weighting_scheme: Choose a weighting scheme from this list: ``classic``, ``fresh``. Defaults to classic if blank. :param overwrite: Allow for overwriting / updating multireddits. If False, and the multi name already exists, throw 409 error. If True, and the multi name already exists, use the given properties to update that multi. If True, and the multi name does not exist, create it normally. :returns: The newly created Multireddit object. The additional parameters are passed directly into :meth:`~praw.__init__.BaseReddit.request_json` """

        url = self.config['multireddit_about'].format(user=self.user.name,
                                                      multi=name)
        if subreddits:
            subreddits = [{'name': six.text_type(sr)} for sr in subreddits]
        model = {}
        for key in ('description_md', 'icon_name', 'key_color', 'subreddits',
                    'visibility', 'weighting_scheme'):
            value = locals()[key]
            if value:
                model[key] = value

        method = 'PUT' if overwrite else 'POST'
        return self.request_json(url, data={'model': json.dumps(model)},
                                 method=method, *args, **kwargs)