def METHOD_NAME(context: Context, addr: str) -> Entity:
    addr = ADDRESS_FIXES.get(addr, addr)
    parts = [p.strip() for p in addr.split(",")]
    street = parts[0]
    country_code, postal_code, city = None, None, None
    if m := re.match(r"(A|D|F|I|[A-Z]{2})[- ]\s*([\d\-]+) (.+)", parts[-1]):
        country_code = COUNTRY_CODES.get(m.group(1), m.group(1).lower())
        postal_code, city = m.group(2), m.group(3)
    if not country_code or not city:
        context.log.warn(f'Cannot parse address "{addr}"')
    return h.make_address(
        context=context,
        full=addr,
        street=street,
        postal_code=postal_code,
        city=city,
        country_code=country_code,
    )