<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def send_request(self, request, async=False, local_callback=None, remote_callback=None, user_info=None):
 """ Sends a request, calls the local callback, then the remote callback in case of async call Args: request: The request to send local_callback: local method that will be triggered in case of async call remote_callback: remote moethd that will be triggered in case of async call user_info: contains additionnal information to carry during the request Returns: Returns the object and connection (object, connection) """


        callbacks = dict()

        if local_callback:
            callbacks['local'] = local_callback

        if remote_callback:
            callbacks['remote'] = remote_callback

        connection = NURESTConnection(request=request, async=async, callback=self._did_receive_response, callbacks=callbacks)
        connection.user_info = user_info

        return connection.start()