<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def updates(self, id, update_id=None):
 # pylint: disable=invalid-name,redefined-builtin """Get updates of a running result via long-polling. If no updates are available, CDRouter waits up to 10 seconds before sending an empty response. :param id: Result ID as an int. :param update_id: (optional) Update ID as an int. :return: :class:`results.Update <results.Update>` object :rtype: results.Update """

        if update_id is None:
            update_id = -1
        schema = UpdateSchema()
        resp = self.service.get_id(self.base, id, params={'updates': update_id})
        return self.service.decode(schema, resp)