"""Additional mixed keys introduced in 2023."""

from ...helps import len_print

BASE_NEW_2023: dict[str, str] = {
    "continental indoor soccer league": "الدوري القاري لكرة القدم داخل الصالات",
    "western indoor soccer league": "الدوري الغربي لكرة القدم داخل الصالات",
    "world indoor soccer league": "الدوري العالمي لكرة القدم داخل الصالات",
    "major indoor soccer league": "الدوري الرئيسي لكرة القدم داخل الصالات",
    "eastern indoor soccer league": "الدوري الشرقي لكرة القدم داخل الصالات",
    "game-of-thrones": "صراع العروش",
    "game of thrones": "صراع العروش",
    "statistics": "إحصائيات",
    "records": "سجلات",
    "records and statistics": "سجلات وإحصائيات",
    "literary characters": "شخصيات أدبية",
    "audiovisual introductions": "استحداثات سمعية بصرية",
    "amusement rides": "ألعاب ملاهي",
    "amusement ride introductions": "استحداثات ألعاب ملاهي",
    "amusement rides introductions": "استحداثات ألعاب ملاهي",
    "amusement parks": "متنزهات ملاهي",
    "amusement park": "متنزهات ملاهي",
    "amusement park introductions": "استحداثات متنزهات ملاهي",
    "amusement parks introductions": "استحداثات متنزهات ملاهي",
    "amusement ride attractions": "ألعاب ملاهي جاذبة",
    "amusement rides attractions": "ألعاب ملاهي جاذبة",
    "amusement park attraction introductions": "استحداثات متنزهات ملاهي جاذبة",
    "amusement park attractions": "متنزهات ملاهي جاذبة",
    "amusement attractions": "ملاهي جاذبة",
    "visitor attractions": "معالم سياحية",
    "tourist attractions": "مواقع جذب سياحي",
    "roadside attractions": "مناطق جذب على جانب الطريق",
    "dubailand": "دبي لاند",
    "freethought": "فكر حر",
    "changyi": "تشانجي",
    "cattle": "الماشية",
    "blindness": "العمى",
    "lgbt rights": "حقوق المثليين",
    "capes": "رؤوس",
    "stalls": "الانهيار",
    "privately held companies": "شركات خاصة",
    "charter-airlines": "طيران عارض",
    "charter airlines": "طيران عارض",
    "defunct charter-airlines": "طيران عارض سابق",
    "psychotherapy": "علاج نفسي",
    "healthcare reform": "إصلاح الرعاية الصحية",
    "pseudonymous writers": "كتاب بأسماء مستعارة",
}


ANTI_KEYS: dict[str, str] = {
    "anti-war": "مناهضة للحرب",
    "anti-revisionist": "مناهضة للتحريفية",
    "anti-communism": "مناهضة للشيوعية",
    "anti-capitalist": "مناهضة للرأسمالية",
    "anti-islam": "مناهضة للإسلام",
    "anti-zionist": "مناهضة للصهيونية",
    "anti-jewish": "مناهضة لليهودية",
    "anti-monopoly": "مناهضة للإحتكار",
    "anti-masonic": "مناهضة للماسونية",
    "anti-smoking": "مناهضة للتدخين",
    "anti-obesity": "مناهضة للسمنة",
    "anti-vaccination": "مناهضة للتطعيم",
    "anti-poverty": "مناهضة للفقر",
    "anti-communists": "مناهضة للشيوعية",
    "anti-racism": "مناهضة للعنصرية",
    "anti-liquor": "مناهضة للخمور",
    "anti-abortion": "مناهضة للإجهاض",
}


ANTI_SUFFIXES: dict[str, str] = {
    "company": "شركات",
    "protests": "احتجاجات",
    "organizations": "منظمات",
    "organization": "منظمات",
    "works": "أعمال",
    "movement": "حركات",
    "albums": "ألبومات",
    "books": "كتب",
    "comic book": "كتب قصص مصورة",
    "comic strips": "شرائط كومكس",
    "comic": "قصص مصورة",
    "comics": "قصص مصورة",
    "marvel comics": "مارفال كومكس",
    "dictionaries": "قواميس",
    "encyclopedias": "موسوعات",
    "films": "أفلام",
    "given names": "أسماء شخصية",
    "graphic novels": "روايات مصورة",
    "inscriptions": "نقوش",
    "literary awards": "جوائز أدبية",
    "magazines": "مجلات",
    "manga": "مانغا",
    "music": "موسيقى",
    "names": "أسماء",
    "newspapers": "صحف",
    "novels": "روايات",
    "novellas": "روايات قصيرة",
    "operas": "أوبيرات",
    "plays": "مسرحيات",
    "poems": "قصائد",
    "publications": "منشورات",
    "radio stations": "محطات إذاعية",
    "short stories": "قصص قصيرة",
    "songs": "أغان",
    "surnames": "ألقاب",
    "video games": "ألعاب فيديو",
    "webcomic": "ويب كومكس",
    "webcomics": "ويب كومكس",
    "websites": "مواقع ويب",
}


AFC_KEYS: dict[str, str] = {
    "afc asian cup qualification": "تصفيات كأس آسيا",
    "fifa world cup qualification (caf)": "تصفيات كأس العالم لكرة القدم (إفريقيا)",
    "fifa world cup qualification (afc)": "تصفيات كأس العالم لكرة القدم (آسيا)",
    "fifa futsal world cup qualification": "تصفيات كأس العالم لكرة الصالات",
    "fifa futsal world cup qualification (afc)": "تصفيات كأس العالم لكرة الصالات (آسيا)",
    "fifa futsal world cup qualification (caf)": "تصفيات كأس العالم لكرة الصالات (إفريقيا)",
    "afc challenge league": "دوري التحدي الآسيوي",
    "association football afc": "كرة القدم في الاتحاد الآسيوي لكرة القدم",
    "association-football afc": "كرة القدم في الاتحاد الآسيوي لكرة القدم",
    "afc elite league": "دوري نخبة ابطال آسيا",
    "afc champions league elite": "دوري نخبة ابطال آسيا",
    "afc champions league two": "دوري أبطال آسيا الثاني",
    "afc cup participants": "مشاركون في كأس الاتحاد الآسيوي لكرة القدم",
    "asian football confederation": "الاتحاد الآسيوي لكرة القدم",
    "afc football": "كرة قدم الاتحاد الآسيوي لكرة القدم",
    "afc cup": "كأس الاتحاد الآسيوي",
    "afc asian cup": "كأس آسيا",
    "afc champions league": "دوري أبطال آسيا",
    "afc asian cup finals": "نهائيات كأس آسيا",
    "afc president's cup": "كأس رئيس الاتحاد الآسيوي",
    "afc solidarity cup": "كأس التضامن الآسيوي",
    "afc women's asian cup": "كأس الأمم الآسيوية لكرة القدم للسيدات",
    "afc u-23 women's asian cup": "كأس آسيا للسيدات تحت 23 سنة",
    "afc u-22 women's asian cup": "كأس آسيا للسيدات تحت 22 سنة",
    "afc u-20 women's asian cup": "كأس آسيا للسيدات تحت 20 سنة",
    "afc u-19 women's asian cup": "كأس آسيا للسيدات تحت 19 سنة",
    "afc u-17 women's asian cup": "كأس آسيا للسيدات تحت 17 سنة",
    "afc u-16 women's asian cup": "كأس آسيا للسيدات تحت 16 سنة",
    "afc women's championship": "بطولة آسيا للسيدات",
    "afc u-22 women's championship": "بطولة آسيا للسيدات تحت 22 سنة",
    "afc u-23 women's championship": "بطولة آسيا للسيدات تحت 23 سنة",
    "afc u-20 women's championship": "بطولة آسيا للسيدات تحت 20 سنة",
    "afc u-19 women's championship": "بطولة آسيا للسيدات تحت 19 سنة",
    "afc u-17 women's championship": "بطولة آسيا للسيدات تحت 17 سنة",
    "afc u-16 women's championship": "بطولة آسيا للسيدات تحت 16 سنة",
    "afc youth championship": "بطولة آسيا للشباب",
    "afc u-23 championship": "بطولة آسيا تحت 23 سنة",
    "afc u-22 championship": "بطولة آسيا للناشئين تحت 22 سنة",
    "afc u-20 championship": "بطولة آسيا للناشئين تحت 20 سنة",
    "afc u-19 championship": "بطولة آسيا للناشئين تحت 19 سنة",
    "afc u-17 championship": "بطولة آسيا للناشئين تحت 17 سنة",
    "afc u-16 championship": "بطولة آسيا للناشئين تحت 16 سنة",
    "afc u-23 asian cup": "كأس آسيا تحت 23 سنة",
    "afc u-22 asian cup": "كأس آسيا للناشئين تحت 22 سنة",
    "afc u-20 asian cup": "كأس آسيا للناشئين تحت 20 سنة",
    "afc u-19 asian cup": "كأس آسيا للناشئين تحت 19 سنة",
    "afc u-17 asian cup": "كأس آسيا للناشئين تحت 17 سنة",
    "afc u-16 asian cup": "كأس آسيا للناشئين تحت 16 سنة",
    "afc futsal championship": "بطولة آسيا لكرة الصالات",
    "afc women's futsal championship": "بطولة آسيا لكرة الصالات للسيدات",
    "afc futsal asian cup": "كأس آسيا لكرة الصالات",
    "afc futsal club championship": "بطولة آسيا لكرة الصالات للأندية",
}


def build_new_2023() -> dict[str, str]:
    """Return the mapping that augments the historical ``NEW_2023`` dictionary."""

    data = dict(BASE_NEW_2023)

    for prefix, prefix_label in ANTI_KEYS.items():  # Category:Anti-war protests in France
        lowered = prefix.lower()
        for suffix, suffix_label in ANTI_SUFFIXES.items():
            data[f"{lowered} {suffix}"] = f"{suffix_label} {prefix_label}"

    data.update({x.lower(): v for x, v in AFC_KEYS.items()})

    return data


NEW_2023: dict[str, str] = build_new_2023()


len_print.data_len(
    "keys_23.py",
    {
        "NEW_2023": NEW_2023,
    },
)
__all__ = ["NEW_2023"]
