def METHOD_NAME(self, item, spider):  # noqa: C901
    check_field(item, spider, "brand_wikidata", allowed_types=(str,), match_regex=self.wikidata_regex)
    check_field(item, spider, "website", (str,), self.url_regex)
    check_field(item, spider, "image", (str,), self.url_regex)
    check_field(item, spider, "email", (str,), self.email_regex)
    check_field(item, spider, "phone", (str,))
    check_field(item, spider, "street_address", (str,))
    check_field(item, spider, "city", (str,))
    check_field(item, spider, "state", (str,))
    check_field(item, spider, "postcode", (str,))
    check_field(item, spider, "country", (str,), self.country_regex)
    check_field(item, spider, "name", (str,))
    check_field(item, spider, "brand", (str,))
    if coords := get_lat_lon(item):
        lat, lon = coords
        if not (self.min_lat < lat < self.max_lat):
            spider.crawler.stats.inc_value("atp/field/lat/invalid")
            lat = None
        if not (self.min_lon < lon < self.max_lon):
            spider.crawler.stats.inc_value("atp/field/lon/invalid")
            lon = None
        if isinstance(lat, float) and isinstance(lon, float):
            if math.fabs(lat) < 3 and math.fabs(lon) < 3:
                spider.crawler.stats.inc_value("atp/geometry/null_island")
                lat = None
                lon = None
        set_lat_lon(item, lat, lon)
    if not (item.get("geometry") or get_lat_lon(item)):
        spider.crawler.stats.inc_value("atp/field/lat/missing")
        spider.crawler.stats.inc_value("atp/field/lon/missing")
    if twitter := item.get("twitter"):
        if not isinstance(twitter, str):
            spider.crawler.stats.inc_value("atp/field/twitter/wrong_type")
        elif not (self.url_regex.match(twitter) and "twitter.com" in twitter) and not self.twitter_regex.match(
            twitter
        ):
            spider.crawler.stats.inc_value("atp/field/twitter/invalid")
    else:
        spider.crawler.stats.inc_value("atp/field/twitter/missing")
    if opening_hours := item.get("opening_hours"):
        if isinstance(opening_hours, OpeningHours):
            if opening_hours.day_hours:
                item["opening_hours"] = opening_hours.as_opening_hours()
            else:
                item["opening_hours"] = None
                spider.crawler.stats.inc_value("atp/field/opening_hours/missing")
        elif not isinstance(opening_hours, str):
            spider.crawler.stats.inc_value("atp/field/opening_hours/wrong_type")
        elif not self.opening_hours_regex.match(opening_hours) and opening_hours != "24/7":
            spider.crawler.stats.inc_value("atp/field/opening_hours/invalid")
    else:
        spider.crawler.stats.inc_value("atp/field/opening_hours/missing")
    return item