def METHOD_NAME(self, link):
    r = requests.get(f"{BASE_URL}{link}")
    r.raise_for_status()
    soup = BeautifulSoup(r.text, features="html.parser")
    # check for additional districts
    districts = {}
    downloads = soup.find_all("a", href=True)
    for download in downloads:
        href = download.get("href")
        if "apparentid" in href:
            title = download.find("div", class_="title")
            if title is not None:
                # additional district found ->
                districts[title.string.split(": ")[1]] = href
    if len(districts) > 0:
        if self._district is None:
            raise Exception("district is missing")
        if self._district not in districts:
            raise Exception(f"district '{self._district}' not found")
        return self.METHOD_NAME(districts[self._district])
    dates = set()
    downloads = soup.find_all("a", href=True)
    for download in downloads:
        # href ::= "/appl/ics.php?apid=12731252&amp;from=2022-05-04%2013%3A00%3A00&amp;to=2022-05-04%2013%3A00%3A00"
        href = download.get("href")
        if "ics.php" in href:
            parsed = urlparse(href)
            query = parse_qs(parsed.query)
            date = datetime.datetime.strptime(query["from"][0], "%Y-%m-%d %H:%M:%S")
            dates.add(date.date())
    return dates