defallow(self,*ips:Union[str,IPv4Network,IPv4Address])->None:foripinips:self.allow_ip(ip)defallow_ip(self,ip:Union[str,IPv4Network,IPv4Address])->None:ifisinstance(ip,str):ip=IPv4Network(ip)if"/"inipelseIPv4Address(ip)ifisinstance(ip,IPv4Address):self._allowed_ips.add(ip)elifisinstance(ip,IPv4Network):self._allowed_ips.update(ip.hosts())else:raiseValueError(f"Invalid type of ipaddress: {type(ip)} ('{ip}')")@classmethoddefdefault(cls)->"IPFilter":returncls(DEFAULT_TELEGRAM_NETWORKS)defcheck(self,ip:Union[str,IPv4Address])->bool:ifnotisinstance(ip,IPv4Address):ip=IPv4Address(ip)returnipinself._allowed_ipsdef__contains__(self,item:Union[str,IPv4Address])->bool:returnself.check(item)