# -*- coding: UTF-8 -*-
# Copyright 2012-2024 Rumma & Ko Ltd
# License: GNU Affero General Public License v3 (see file COPYING for details)

LAST_NAMES = [
    'Adam', 'Adami', 'Adriaen', 'Adriaensen', 'Adriaenssen', 'Adriaenssens',
    'Adriencense', 'Adriensence', 'Adrienssens', 'Aelter', 'Aelterman',
    'Aelters', 'Aerens', 'Aerts', 'Aertsens', 'Albumazard', 'Alloo', 'Alsteen',
    'Andersson', 'Andries', 'Andriessen', 'André', 'Anthon', 'Antoine',
    'Appelbaum', 'Applaer', 'Arimont', 'Arquin', 'Arteman', 'Baert',
    'Bartholomeeus', 'Bastien', 'Bastin', 'Baugnet', 'Baugniet', 'Baugniez',
    'Bauwens', 'Beauve', 'Beck', 'Beckers', 'Bernard', 'Bertrand', 'Bietmé',
    'Blaas', 'Blankaert', 'Blanquaert', 'Blondeel', 'Blondeeuw', 'Blondoo',
    'Bodart', 'Bodson', 'Boeck', 'Boesmans', 'Bogaert', 'Bogaerts', 'Bogemans',
    'Booghmans', 'Borremans', 'Borsu', 'Borsus', 'Borsut', 'Bosmans', 'Bouch',
    'Bouchhout', 'Bouillet', 'Bouillère', 'Boulanger', 'Bourton', 'Bouxin',
    'Brasseur', 'Brouck', 'Broucke', 'Broucq', 'Broucque', 'Brouhier', 'Brug',
    'Bruggesman', 'Bruynseel', 'Bruynseels', 'Burger', 'Burghgraeve',
    'Burgmeester', 'Burton', 'Burtont', 'Buyle', 'Calbert', 'Callebaut',
    'Callebert', 'Callebout', 'Camby', 'Cappelaere', 'Cappelaire', 'Cappelier',
    'Cappeliez', 'Cappellier', 'Carbonez', 'Carbonnez', 'Carlier', 'Casteau',
    'Castel', 'Castiaux', 'Cauderlier', 'Caudron', 'Cauvel', 'Cauvet',
    'Cauvin', 'Cavard', 'Ceulemans', 'Chantry', 'Charlier', 'Chestay',
    'Chestia', 'Chrispeels', 'Christiaens', 'Christoffel', 'Chêneboit',
    'Claes', 'Claessens', 'Claeys', 'Claus', 'Clerx', 'Cléban', 'Clébant',
    'Colinus', 'Collard', 'Colleye', 'Collignon', 'Collin', 'Colson', 'Cool',
    'Cools', 'Coppens', 'Corain', 'Corijn', 'Corin', 'Cornelis', 'Cornet',
    'Corrin', 'Corring', 'Corringer', 'Coryn', 'Coudyser', 'Couhysder',
    'Coutijser', 'Coutiser', 'Crab', 'Crabbe', 'Crama', 'Crespel', 'Crevisse',
    'Crevits', 'Crispeel', 'Crispeels', 'Crispel', 'Crispiels', 'Crépez',
    'Cuvelier', 'Cuypers', "D'Haeyer", "D'Hoeraen", "D'hoolaege", 'Daan',
    'Daels', 'Daems', 'Dalmans', 'Damard', 'Damart', 'Danis', 'Dany', 'Danys',
    'Dapvril', 'Daufresne', 'Dawance', 'De Backer', 'De Bisschop', 'De Bloedt',
    'De Blonde', 'De Boeck', 'De Bosscher', 'De Bosschere', 'De Bruyn',
    'De Busschere', 'De Buyle', 'De Clercq', 'De Cock', 'De Coninck',
    'De Conninck', 'De Coster', 'De Cruyenaere', 'De Cuyper', 'De Decker',
    'De Doncker', 'De Draier', 'De Flandre', 'De Frankrijker', 'De Greef',
    'De Griek', 'De Groot', 'De Groote', 'De Guchteneere', 'De Haese',
    'De Hert', 'De Hertog', 'De Hoorne', 'De Kimpe', 'De Markgraef',
    'De Meester', 'De Meulenaer', 'De Meyer', 'De Molder', 'De Munck',
    'De Muynck', 'De Muyncke', 'De Muynek', 'De Muynke', 'De Naeyer',
    'De Nayer', 'De Pannemacker', 'De Pannemaecker', 'De Pauss', 'De Pauw',
    'De Pelsemaeker', 'De Pester', 'De Potter', 'De Praeter', 'De Prester',
    'De Ridder', 'De Ridere', 'De Rovéréaz', 'De Rudere', 'De Sachte',
    'De Saedeleer', 'De Saert', 'De Schepper', 'De Schoone', 'De Smedt',
    'De Smet', 'De Smeytere', 'De Smidt', 'De Smit', 'De Smyter', 'De Stracke',
    'De Sueter', 'De Vette', 'De Voghels', 'De Vos', 'De Vrient', 'De Wilde',
    'De Winter', 'Debacker', 'Debaere', 'Debakker', 'Debaut', 'Debecker',
    'Debekker', 'Debled', 'Deboschere', 'Deboscker', 'Deboskre', 'Debosscher',
    'Debosschere', 'Debusschere', 'Debuyst', 'Declerck', 'Declercq', 'Decock',
    'Decocq', 'Decrucq', 'Decruyenaere', 'Defaux', 'Defawe', 'Degroote',
    'Dehoorne', 'Dehorne', 'Dehornes', 'Deilgat', 'Dejong', 'Dejonghe',
    'Dekale', 'Dekimpe', 'Dekoch', 'Dekuiper', 'Dekyndt', 'Delacuvellerie',
    'Delafosse', 'Delahaye', 'Delahayes', 'Delbouille', 'Delboulle',
    'Delcorps', 'Delflache', 'Delfosse', 'Delgat', 'Delhaye', 'Delhoste',
    'Delhotte', 'Delmare', 'Delmer', 'Delobbe', 'Delobe', 'Delobes',
    'Delplace', 'Delvaux', 'Demain', 'Demeiere', 'Demeyer', 'Demoor',
    'Demoore', 'Demunck', 'Demuynck', 'Den Ouste', 'Denaeyer', 'Denayer',
    'Deneyer', 'Denis', 'Denoor', 'Depannemaecker', 'Depelsemacker',
    'Depelsemaeker', 'Depelsenaire', 'Depelseneer', 'Depercenaire', 'Depester',
    'Depierreux', 'Depireux', 'Depiéreux', 'Depoorter', 'Depoortere',
    'Depooter', 'Depootere', 'Deporter', 'Deportere', 'Depoterre', 'Deprez',
    'Deramaix', 'Deroosse', 'Desandrouins', 'Descamps', 'Deschepper',
    'Desmedt', 'Desmet', 'Desmets', 'Desmeytere', 'Desmidt', 'Desmidts',
    'Desmit', 'Desmyter', 'Desmytter', 'Desmyttere', 'Despineto', 'Despret',
    'Desprets', 'Despretz', 'Desprey', 'Desprez', 'Després', 'Destoute',
    'Deswart', 'Deswarte', 'Dethier', 'Deur', 'Deurwaerder', 'Devis', 'Devloo',
    'Devos', 'Devriend', 'Dewever', 'Dewit', 'Dewitte', 'Dewyse', 'Dhaeyer',
    'Dhoeraen', 'Dierckx', 'Dierik', 'Doeraene', 'Dolhaeghe', 'Domiens',
    'Dominicus', 'Dondaine', 'Dondeine', 'Dondenne', 'Dondeyne', 'Doolaeghe',
    'Doolaegue', 'Doolage', 'Doorn', 'Doorne', 'Doorneman', 'Draier',
    'Dresselaers', 'Dubled', 'Dubois', 'Dumont', 'Dupont', 'Duquesnay',
    'Duquesne', 'Duquesnoy', 'Ebrard', 'Eeckeman', 'Eerkens', 'Erckens', 'Erk',
    'Erken', 'Erkens', 'Etienne', 'Euvrard', 'Evert', 'Evrard', 'Evras',
    'Evrat', 'Eyck', 'Eysermans', 'Fawat', 'Faweux', 'Fee', 'Felix',
    'Flamenck', 'Floche', 'Floquet', 'Fontaine', 'Fonteyne', 'Fraigany',
    'Fraigneux', 'Francoeur', 'Francon', 'Frankel', 'Franken', 'Frankeur',
    'Frans', 'Fransman', 'Fransolet', 'Franzman', 'François', 'Frijer',
    'Gabriels', 'Gadisseur', 'Gadisseux', 'Gasthuys', 'Gaudisseu', 'Geeregat',
    'Geerts', 'Geets', 'Gehucht', 'Geiregat', 'Gendebien', 'Genot', 'Georges',
    'Gerlache', 'Gerlaxhe', 'Germay', 'Germeau', 'Germéa', 'Ghiste', 'Gidts',
    'Giets', 'Gilles', 'Gillet', 'Gilson', 'Gits', 'Glaze', 'Glazeman',
    'Goethals', 'Goffin', 'Gomaert', 'Gomardt', 'Goor', 'Goossens', 'Goud',
    'Goudman', 'Goudsmith', 'Gourdet', 'Gousson', 'Graas', 'Greggs', 'Gregh',
    'Gregoor', 'Grewis', 'Groot', 'Groote', 'Grotaers', 'Grégoire',
    'Guillaume', 'Guyaux', 'Gérard', 'Haesen', 'Haesevoets', 'Halasi',
    'Halazy', 'Hamers', 'Hanssens', 'Hardas', 'Hardat', 'Hardy', 'Heerbrant',
    'Hendrick', 'Hendrickx', 'Hendriks', 'Henry', 'Herbrand', 'Herbrandt',
    'Herbrant', 'Herman', 'Hermann', 'Hermans', 'Herten', 'Hertogs',
    'Hertogue', 'Heylen', 'Heymans', 'Heynemans', 'Heyrman', 'Hinck',
    'Hinckel', 'Hincker', 'Hinkel', 'Hinkels', 'Hinkens', 'Hinker', 'Hinkle',
    'Hoefnagel', 'Hoefnagels', 'Holemans', 'Honnay', 'Horlin', 'Houvenaghel',
    'Hoyois', 'Hubert', 'Huig', 'Ickx', 'Istace', 'Istasse', 'Jaak', 'Jaap',
    'Jacob', 'Jacobs', 'Jacques', 'Jacquet', 'Jan', 'Janhes', 'Jansen',
    'Janssen', 'Janssens', 'Jef', 'Jenot', 'Jeuniaux', 'Joire', 'Jone',
    'Joneau', 'Jonet', 'Jongers', 'Jonnet', 'Jonné', 'Jordaens', 'Jorez',
    'Joris', 'Jorissen', 'Jozef', 'Julianus', 'Julius', 'Jurgen', 'Kaalman',
    'Kaisin', 'Keetels', 'Kenens', 'Kenes', 'Kenis', 'Kennens', 'Kennes',
    'Kennis', 'Kesteloot', 'Ketel', 'Ketelsmit', 'Kiecken', 'Kimpe', 'Kinnen',
    'Klein', 'Kleineman', 'Kleiner', 'Kleinerman', 'Kleinman', 'Klerk',
    'Kleynen', 'Klingeleers', 'Kobus', 'Koeck', 'Konninckx', 'Koolman',
    'Korring', 'Kramers', 'Kreemers', 'Kuipers', 'Labbez', 'Lacroix', 'Laenen',
    'Laenens', 'Lafontaine', 'Lambert', 'Lambrechts', 'Lanen', 'Lanens',
    'Langlez', 'Lapayre', 'Laseur', 'Laseure', 'Lauffer', 'Laurent', 'Lauwers',
    'Le Mayeur', 'Le Provost', 'Leboutte', 'Lebrun', 'Leclerc', 'Leclercq',
    'Lecocq', 'Lecomte', 'Ledecq', 'Leenhard', 'Leenhart', 'Lefebvre',
    'Lefèvre', 'Legrand', 'Lejeune', 'Lemaire', 'Lemmens', 'Lemonnier',
    'Lemounie', 'Lenaerts', 'Lennel', 'Lepoutre', 'Leprette', 'Lepropre',
    'Leroy', 'Lescohy', 'Lesoil', 'Lesoile', 'Lesoille', 'Levecq', 'Lewek',
    'Libert', 'Liens', 'Liephoudt', 'Liepot', 'Liepout', 'Lieseborghs',
    'Liesenborghs', 'Lietaer', 'Lietaert', 'Lietar', 'Lievens', 'Lievesoons',
    'Lievevrouw', 'Lievrouw', 'Lievrow', 'Linglay', 'Linglet', 'Liphout',
    'Lisenborgh', 'Lisenborgs', 'Liétar', 'Liétard', 'Liétart', 'Liévrouw',
    'Locreille', 'Locrel', 'Locrelle', 'Lode', 'Loo', 'Lorfèvre', 'Lorphêvre',
    'Losseau', 'Losset', 'Louis', 'Louzeau', 'Lowie', 'Ludovicus', 'Lugen',
    'Lugens', 'Lust', 'Lustig', 'Luyer', 'Luyrik', 'Luyten', 'Lyphoudt',
    'Lyphout', 'Lénel', 'Lénelle', 'Léonard', 'Maca', 'Maertens', 'Maes',
    'Maessen', 'Mahieu', 'Maka', 'Malchamp', 'Malchamps', 'Malmedier',
    'Malmedy', 'Malmendier', 'Mangon', 'Maqua', 'Marchal', 'Marckx', 'Marcus',
    'Mardaga', 'Maria', 'Mark', 'Markgraff', 'Martens', 'Martin', 'Martins',
    'Maréchal', 'Massart', 'Masson', 'Mathieu', 'Mathissen', 'Mathy',
    'Matthys', 'Mauchamp', 'Mauchamps', 'Maurichon', 'Maurissen', 'Maurits',
    'Mayeur', 'Mayeux', 'Mechelaere', 'Meert', 'Meertens', 'Meester', 'Meeus',
    'Melaerts', 'Mellaerts', 'Merchier', 'Merchié', 'Mergeai', 'Mergeay',
    'Merjai', 'Merjay', 'Mertens', 'Mertes', 'Merts', 'Mertz', 'Meulemans',
    'Meulemeesters', 'Meunier', 'Meurice', 'Mewis', 'Mewissen', 'Michaux',
    'Michaël', 'Michel', 'Michiels', 'Mixhel', 'Mochamps', 'Moens', 'Moeyaert',
    'Moiling', 'Moinil', 'Molemans', 'Molenaers', 'Monceau', 'Moncia',
    'Monciaux', 'Monsay', 'Monteyne', 'Moreau', 'Mouyart', 'Moyaert',
    'Mullenders', 'Munck', 'Muynck', 'Nachtegael', 'Nagelmaekers', 'Nagels',
    'Natus', 'Neel', 'Neels', 'Neuray', 'Neureau', 'Neuret', 'Neurot', 'Neuts',
    'Neuven', 'Neven', 'Nguyen', 'Nicolas', 'Nicolaus', 'Nicolus', 'Nijs',
    'Niklaas', 'Noël', 'Nuts', 'Nuttin', 'Ochin', 'Olivier', 'Olyff',
    'Paindavaine', 'Pannaye', 'Parmentier', 'Pas', 'Pauss', 'Pauwels',
    'Peeters', 'Pelser', 'Pelsmaeker', 'Peschon', 'Peschoniez', 'Pester',
    'Petersen', 'Petit', 'Pierre', 'Piet', 'Pieters', 'Pietersen', 'Piette',
    'Pirard', 'Piron', 'Pirotte', 'Plaats', 'Poels', 'Poelsmans', 'Poncelet',
    'Pools', 'Posson', 'Potstainer', 'Potter', 'Pottiaux', 'Pottié', 'Potty',
    'Poyon', 'Praat', 'Premereur', 'Premmereur', 'Prevostel', 'Priesse',
    'Prisse', 'Proost', 'Prost', 'Proust', 'Putman', 'Putmans', 'Puttemans',
    'Quaisin', 'Quesnay', 'Quesne', 'Quesneau', 'Quesnel', 'Quesney',
    'Quesnoy', 'Queval', 'Raes', 'Ramael', 'Raucent', 'Rauscent', 'Rausin',
    'Raussain', 'Raussent', 'Raussin', 'Raveydts', 'Ravignat', 'Remy',
    'Renard', 'Retelet', 'Ricaart', 'Ricaert', 'Ricard', 'Robaert', 'Robbert',
    'Robert', 'Roels', 'Roland', 'Rooseels', 'Roosengardt', 'Rosseel',
    'Rousseau', 'Saint-Maux', 'Saintmaux', 'Sanctorum', 'Santilman', 'Schmitz',
    'Schnock', 'Schoenmakers', 'Schoenman', 'Schoone', 'Scorier', 'Scuvie',
    'Segers', 'Seghers', 'Seppen', 'Servais', 'Shoen', 'Sijmen', 'Simoens',
    'Simon', 'Simons', 'Sinnesal', 'Sinnesaël', 'Slagmolder', 'Slagmulder',
    'Slamulder', 'Smal', 'Smeets', 'Smet', 'Smets', 'Smit', 'Smolders',
    'Smulders', 'Somers', 'Sottiaux', 'Spinette', 'Sprecher', 'Stas', 'Stass',
    'Stassaert', 'Stassar', 'Stassard', 'Stassart', 'Stasse', 'Stassiaux',
    'Stassin', 'Stassinet', 'Statius', 'Steculorum', 'Stefaans', 'Stercken',
    'Sterckmans', 'Sterckx', 'Stevens', 'Stier', 'Stiers', 'Stievens', 'Stine',
    'Stoffel', 'Stordair', 'Stordeur', 'Stoutmans', 'Swart', 'Swarte',
    "T'Jampens", 'Tack', 'Taverner', 'Teissant', 'Terreur', 'Thijs', 'Thiry',
    'Thissen', 'Thomas', 'Thonnisen', 'Thuiliau', 'Thuiliaux', 'Thuiliet',
    'Thys', 'Tibaut', 'Timmerman', 'Timmermans', 'Tjampens', 'Toussaint',
    'Trausch', 'Tuiliau', 'Tuiliaux', 'Tuilliet', 'Tuin', 'Tumson',
    'Tweelinckx', 'Urbain', 'Urting', 'Van Acker', 'Van Aelter', 'Van Belle',
    'Van Berckel', 'Van Bergh', 'Van Caenegem', 'Van Caeneghem', 'Van Daele',
    'Van Damme', 'Van Den', 'Van Doren', 'Van Dorp', 'Van Dorpe',
    'Van Dovlaeghe', 'Van Dyck', 'Van Engeland', 'Van Esch', 'Van Escht',
    'Van Eyck', 'Van Hecke', 'Van Hoof', 'Van Hoorebeke', 'Van Hoorenbeeck',
    'Van Horenbeck', 'Van Horenbeeck', 'Van Lierde', 'Van Noye', 'Van Noÿe',
    'Van Pede', 'Van Pé', 'Van Pée', 'Van Roy', 'Van Sinaey', 'Van Slijke',
    'Van Slycke', 'Van Steerteghem', 'Van Steerteghen', 'Van Steirteghem',
    'Van Vleuten', 'Van de Loo', 'Van de Pas', 'Van de Poel', 'Van de Slijke',
    'Van de Slycke', 'Van de Veld', 'Van de Velde', 'Van den Bergh',
    'Van den Bogaerde', 'Van den Borne', 'Van den Bossche', 'Van den Broeck',
    'Van den Broecke', 'Van den Camp', 'Van den Castele', 'Van den Dael',
    'Van den Dorpe', 'Van den Tuin', 'Van der Brug', 'Van der Gucht',
    'Van der Pas', 'Van der Slijke', 'Van der Slikke', 'Van der Slycke',
    'Van der Vleuten', 'Vanbattel', 'Vanbergh', 'Vandamme', 'Vandenberghe',
    'Vandenbossche', 'Vandenbussche', 'Vandendorpe', 'Vandeputte',
    'Vanderhorst', 'Vanderlinden', 'Vanderplaetsen', 'Vandevelde',
    'Vandoolaeghe', 'Vandorpe', 'Vanlierde', 'Vanpede', 'Vanpé', 'Vanpée',
    'Vansteertegem', 'Vecq', 'Veld', 'Veldmann', 'Vellemans', 'Veraghe',
    'Veraghen', 'Verbeeck', 'Verbeke', 'Verbruggen', 'Vercammen', 'Vercheval',
    'Verdoolaeghe', 'Verhaege', 'Verhaegen', 'Verhaeghe', 'Verhaeghen',
    'Verhaegue', 'Verhage', 'Verhagen', 'Verhaghe', 'Verhelst', 'Verheyen',
    'Verhoeven', 'Verlinden', 'Vermeer', 'Vermeersch', 'Vermeiren', 'Vermeren',
    'Vermeulen', 'Vermotte', 'Verplaetse', 'Verplancke', 'Verplancken',
    'Verschueren', 'Verslijke', 'Verslycke', 'Verstraete', 'Verstraeten',
    'Vervoort', 'Vet', 'Vette', 'Viatour', 'Vieutemps', 'Vieutems',
    'Vieuxtemps', 'Vilain', 'Vincent', 'Vinchent', 'Visje', 'Vlaamsche',
    'Vlaeminck', 'Vlaemynck', 'Vlaminck', 'Vlamynck', 'Vlemincks', 'Vleminckx',
    'Vleminx', 'Vlemynckx', 'Vogels', 'Volckaert', 'Volkaert', 'Volkaerts',
    'Volkart', 'Volkert', 'Voller', 'Vos', 'Vossen', 'Vrank', 'Vrindt',
    'Vrolijt', 'Vrolyck', 'Vullers', 'Wagemans', 'Wagenmann', 'Waghon',
    'Wagon', 'Walle', 'Wastiaux', 'Watrigant', 'Watriquant', 'Watteau',
    'Watteaux', 'Wattecamp', 'Wattecamps', 'Wattecant', 'Watteel', 'Wattel',
    'Wattelle', 'Wattiau', 'Wattiaux', 'Wattieaux', 'Wauters', 'Weers',
    'Weerts', 'Wek', 'Wevers', 'Weynen', 'Wilbaert', 'Wilfart', 'Willems',
    'Willock', 'Willocq', 'Wilock', 'Wintgens', 'Wouter', 'Wouters', 'Wuyts',
    'Wylock', 'Wylocke', 'Yildirim', 'Yilmaz', 'Zadelaar', 'Zegers', 'Zeggers',
    'Zègres'
]

from commondata.demonames import russian, french, muslim, african


class NameFactory:

    def get_last_names(self):
        return (LAST_NAMES + muslim.LAST_NAMES + LAST_NAMES +
                russian.LAST_NAMES + LAST_NAMES + african.LAST_NAMES)

    def get_male_first_names(self):
        return (french.MALE_FIRST_NAMES + muslim.MALE_FIRST_NAMES +
                french.MALE_FIRST_NAMES + russian.MALE_FIRST_NAMES +
                french.MALE_FIRST_NAMES + african.MALE_FIRST_NAMES)

    def get_female_first_names(self):
        return (french.FEMALE_FIRST_NAMES + muslim.FEMALE_FIRST_NAMES +
                french.FEMALE_FIRST_NAMES + russian.FEMALE_FIRST_NAMES +
                french.FEMALE_FIRST_NAMES + african.FEMALE_FIRST_NAMES)
