<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def request(self, shards, full_response, return_status_tuple=False):
 """Request the API This method is wrapped by similar functions """

        try:
            resp = self._request(shards)
            if return_status_tuple:
                return (self._parser(resp, full_response), True)
            else:
                return self._parser(resp, full_response)
        except (ConflictError, CloudflareServerError, InternalServerError) as exc:
            # The Retry system
            if return_status_tuple:
                return (None, False)
            elif self.api_mother.do_retry:
                # TODO
                # request_limit = 0
                sleep(self.api_mother.retry_sleep)
                resp = self.request(shards, full_response, True)
                while not resp[1]:
                    sleep(self.api_mother.retry_sleep)
                    resp = self.request(shards, full_response, True)
                return resp[0]
            else:
                raise exc