<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def url_report(self, scan_url, apikey):
 """ Send URLS for list of past malicous associations """

        url = self.base_url + "url/report"
        params = {"apikey": apikey, 'resource': scan_url}
        rate_limit_clear = self.rate_limit()
        if rate_limit_clear:
            response = requests.post(url, params=params, headers=self.headers)
            if response.status_code == self.HTTP_OK:
                json_response = response.json()
                return json_response
            elif response.status_code == self.HTTP_RATE_EXCEEDED:
                time.sleep(20)
            else:
                self.logger.error("sent: %s, HTTP: %d", scan_url, response.status_code)
            time.sleep(self.public_api_sleep_time)