from random import choice
from .supportive_functions import (
    generate_female_name,
    generate_male_name,
    generate_surname_less,
    remove_duplicates,
)


female_prefix = [
    "aisha",
    "amal",
    "asra",
    "bahia",
    "dalila",
    "esma",
    "fadia",
    "ghada",
    "hala",
    "jalila",
    "kamila",
    "laila",
    "maha",
    "nadia",
    "omaira",
    "rabia",
    "sabah",
    "tamara",
    "yasmin",
    "zahra",
]

female_suffix = [
    "a",
    "ah",
    "at",
    "aya",
    "een",
    "ela",
    "ena",
    "era",
    "eya",
    "ia",
    "ida",
    "ina",
    "ira",
    "iya",
    "iyya",
    "iya",
    "iya",
    "iza",
    "ra",
    "ya",
]

male_prefix = [
    "ab",
    "ad",
    "ah",
    "al",
    "am",
    "an",
    "ar",
    "as",
    "az",
    "bah",
    "dal",
    "fah",
    "gha",
    "hab",
    "hak",
    "han",
    "has",
    "hay",
    "ibn",
    "id",
    "is",
    "ja",
    "kal",
    "kar",
    "kas",
    "lab",
    "mal",
    "mar",
    "nas",
    "rab",
    "rah",
    "sal",
    "sam",
    "sar",
    "sha",
    "tab",
    "tal",
    "tar",
    "yah",
    "yas",
    "zah",
    "zay",
]

male_suffix = [
    "ad",
    "ah",
    "al",
    "am",
    "an",
    "ar",
    "as",
    "at",
    "ay",
    "az",
    "dil",
    "din",
    "eem",
    "el",
    "en",
    "es",
    "ey",
    "id",
    "il",
    "im",
    "in",
    "ir",
    "is",
    "it",
    "iy",
    "iz",
    "lil",
    "mal",
    "mil",
    "min",
    "mir",
    "nir",
    "or",
    "os",
    "ur",
    "us",
    "ut",
    "uz",
]

surname_prefix = [
    "abd",
    "al",
    "am",
    "an",
    "ar",
    "ash",
    "asim",
    "az",
    "bah",
    "dal",
    "fah",
    "ghal",
    "ham",
    "has",
    "ibn",
    "jah",
    "kal",
    "kas",
    "mah",
    "naj",
    "qas",
    "ram",
    "saf",
    "sal",
    "sam",
    "tah",
    "zar",
]

surname_suffix = [
    "a",
    "ah",
    "at",
    "ay",
    "een",
    "i",
    "ia",
    "id",
    "il",
    "im",
    "ir",
    "is",
    "iy",
    "iyah",
    "ullah",
    "ulah",
    "ur",
    "us",
    "ush",
    "yah",
    "yid",
    "yim",
    "yin",
]

female_names = [
    "Abeer",
    "Abida",
    "Adila",
    "Afaf",
    "Ahlem",
    "Alia",
    "Amal",
    "Amani",
    "Amira",
    "Anwar",
    "Asma",
    "Aya",
    "Ayah",
    "Ayesha",
    "Aziza",
    "Badia",
    "Bahija",
    "Basma",
    "Dalia",
    "Dalila",
    "Dunia",
    "Fadia",
    "Fahima",
    "Farah",
    "Fatima",
    "Ghada",
    "Habiba",
    "Hadia",
    "Hala",
    "Hanan",
    "Hasna",
    "Hayat",
    "Hind",
    "Huda",
    "Iman",
    "Intisar",
    "Jamilah",
    "Kamila",
    "Kawthar",
    "Khadija",
    "Lamia",
    "Layla",
    "Lina",
    "Lubna",
    "Maha",
    "Mahira",
    "Malika",
    "Maram",
    "Mariam",
    "Maya",
    "Muna",
    "Nada",
    "Nadia",
    "Nadira",
    "Naima",
    "Nawal",
    "Noor",
    "Nora",
    "Rabab",
    "Rahma",
    "Rana",
    "Rania",
    "Rima",
    "Rouba",
    "Sabiha",
    "Sahar",
    "Salma",
    "Samia",
    "Sana",
    "Sara",
    "Shadia",
    "Shaima",
    "Shakira",
    "Shams",
    "Shaza",
    "Sherine",
    "Soraya",
    "Souad",
    "Suha",
    "Suhaila",
    "Sumaya",
    "Tahira",
    "Tasneem",
    "Wafa",
    "Widad",
    "Yasmin",
    "Yusra",
    "Zahra",
    "Zainab",
    "Zeina",
    "Zohra",
    "Zubaida",
]

male_names = [
    "Abdullah",
    "Abu Bakr",
    "Ahmad",
    "Aladdin",
    "Ali",
    "Amin",
    "Amir",
    "Anwar",
    "Asad",
    "Ashraf",
    "Ayman",
    "Aziz",
    "Bilal",
    "Dawud",
    "Faisal",
    "Farid",
    "Faruq",
    "Ghassan",
    "Hakim",
    "Hamid",
    "Harun",
    "Hasan",
    "Husam",
    "Husayn",
    "Ibrahim",
    "Idris",
    "Ihsan",
    "Imad",
    "Irfan",
    "Isa",
    "Isam",
    "Jamal",
    "Jibril",
    "Kamal",
    "Khalid",
    "Mahmoud",
    "Majid",
    "Malik",
    "Mansur",
    "Marwan",
    "Mazen",
    "Mehdi",
    "Muhammad",
    "Munir",
    "Mustafa",
    "Nadir",
    "Nasir",
    "Nizar",
    "Qasim",
    "Rashid",
    "Rauf",
    "Riyad",
    "Saad",
    "Sabir",
    "Saeed",
    "Salim",
    "Samir",
    "Tariq",
    "Usman",
    "Wahid",
    "Yahya",
    "Yasin",
    "Youssef",
    "Zaid",
    "Zaki",
    "Ziyad",
]

surnames = [
    "Abbas",
    "Abdullah",
    "Abu-Ghanem",
    "Ahmad",
    "Alawi",
    "Ali",
    "Amin",
    "Amir",
    "Ansari",
    "Arab",
    "Asad",
    "Ashraf",
    "Atiyah",
    "Awad",
    "Aziz",
    "Bakr",
    "Barakat",
    "Bazzi",
    "Daoud",
    "Dawood",
    "Fadel",
    "Fahd",
    "Faisal",
    "Farah",
    "Farhat",
    "Faruq",
    "Ghazali",
    "Haddad",
    "Hadi",
    "Hakim",
    "Halabi",
    "Hamad",
    "Hammad",
    "Hassan",
    "Husain",
    "Ibrahim",
    "Idris",
    "Imam",
    "Issa",
    "Jaber",
    "Jalal",
    "Jawad",
    "Kadhim",
    "Khalaf",
    "Khalid",
    "Khouri",
    "Majid",
    "Malik",
    "Mansour",
    "Maroun",
    "Matar",
    "Mazari",
    "Mehdi",
    "Mikhail",
    "Moawad",
    "Mohammad",
    "Mujahid",
    "Musa",
    "Mustafa",
    "Nader",
    "Najjar",
    "Nasir",
    "Nasser",
    "Nazir",
    "Omar",
    "Qasim",
    "Qureshi",
    "Rahman",
    "Rashid",
    "Sadiq",
    "Said",
    "Saleh",
    "Salim",
    "Samir",
    "Saqib",
    "Sharif",
    "Shihab",
    "Siddiq",
    "Suleiman",
    "Taha",
    "Talal",
    "Tamir",
    "Tariq",
    "Umar",
    "Usman",
    "Wahid",
    "Yahya",
    "Younes",
    "Yusuf",
    "Zaher",
    "Zaid",
    "Zain",
    "Zakaria",
    "Zaman",
    "Zayed",
    "Zuhair",
]

female = generate_female_name(female_prefix, female_suffix, min=1, max=2)
male = generate_male_name(male_prefix, male_suffix, min=1, max=2)
surname = generate_surname_less(surname_prefix, surname_suffix)

female_lbr = choice(female_names)
male_lbr = choice(male_names)
surname_lbr = choice(surnames)
