<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def submit(self, event, host=None, source=None, sourcetype=None):
 """Submits a single event to the index using ``HTTP POST``. :param event: The event to submit. :type event: ``string`` :param `host`: The host value of the event. :type host: ``string`` :param `source`: The source value of the event. :type source: ``string`` :param `sourcetype`: The sourcetype value of the event. :type sourcetype: ``string`` :return: The :class:`Index`. """

        args = { 'index': self.name }
        if host is not None: args['host'] = host
        if source is not None: args['source'] = source
        if sourcetype is not None: args['sourcetype'] = sourcetype

        # The reason we use service.request directly rather than POST
        # is that we are not sending a POST request encoded using
        # x-www-form-urlencoded (as we do not have a key=value body),
        # because we aren't really sending a "form".
        self.service.post(PATH_RECEIVERS_SIMPLE, body=event, **args)
        return self