def METHOD_NAME(country_code):
    """
    Return all the country providers that should be visible
    as a list, with partners listed first, then in
    alphabetical order.
    """
    # we need to order by partner, then alphabetical
    # order. Because the django ORM doesn't natively support
    # group by, and because we have hundreds of hosters for each
    # country, at a maximum we can get away with doing it in memory
    all_providers = Hostingprovider.objects.filter(
        country=country_code, showonwebsite=True
    )
    # because historically we have had a mix of empty strings and null
    # values, we need to use multiple excludes
    partner_providers = (
        all_providers.filter(country=country_code, showonwebsite=True)
        .filter(partner__isnull=False)
        .exclude(partner__in=["", "None"])
        .order_by("name")
    )
    regular_providers = all_providers.exclude(id__in=partner_providers).order_by("name")
    # destructure the providers to build a new list,
    # with partner providers first, then regular providers
    providers = [*partner_providers, *regular_providers]
    return [
        {
            "iso": str(provider.country),
            "id": str(provider.id),
            "naam": provider.name,
            "website": provider.website,
            "partner": provider.partner,
        }
        for provider in providers
    ]