line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
#!/usr/bin/env perl |
2
|
|
|
|
|
|
|
# Copyright (C) 2012-2022 Alex Schroeder |
3
|
|
|
|
|
|
|
|
4
|
|
|
|
|
|
|
# This program is free software: you can redistribute it and/or modify it under |
5
|
|
|
|
|
|
|
# the terms of the GNU General Public License as published by the Free Software |
6
|
|
|
|
|
|
|
# Foundation, either version 3 of the License, or (at your option) any later |
7
|
|
|
|
|
|
|
# version. |
8
|
|
|
|
|
|
|
# |
9
|
|
|
|
|
|
|
# This program is distributed in the hope that it will be useful, but WITHOUT |
10
|
|
|
|
|
|
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
11
|
|
|
|
|
|
|
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. |
12
|
|
|
|
|
|
|
# |
13
|
|
|
|
|
|
|
# You should have received a copy of the GNU General Public License along with |
14
|
|
|
|
|
|
|
# this program. If not, see . |
15
|
|
|
|
|
|
|
|
16
|
|
|
|
|
|
|
=encoding utf8 |
17
|
|
|
|
|
|
|
|
18
|
|
|
|
|
|
|
=head1 NAME |
19
|
|
|
|
|
|
|
|
20
|
|
|
|
|
|
|
Game::CharacterSheetGenerator::HumanName - return a human name |
21
|
|
|
|
|
|
|
|
22
|
|
|
|
|
|
|
=head1 SYNOPSIS |
23
|
|
|
|
|
|
|
|
24
|
|
|
|
|
|
|
use Game::CharacterSheetGenerator::HumanName qw(human_name); |
25
|
|
|
|
|
|
|
# returns both $name and $gender (F, M, or ?) |
26
|
|
|
|
|
|
|
my ($name, $gender) = human_name(); |
27
|
|
|
|
|
|
|
# returns the same name and its gender |
28
|
|
|
|
|
|
|
($name, $gender) = human_name("Alex"); |
29
|
|
|
|
|
|
|
|
30
|
|
|
|
|
|
|
=head1 DESCRIPTION |
31
|
|
|
|
|
|
|
|
32
|
|
|
|
|
|
|
This package has one function that returns a human name and a gender. The gender |
33
|
|
|
|
|
|
|
returned is "M", "F", or "?". |
34
|
|
|
|
|
|
|
|
35
|
|
|
|
|
|
|
If a name is provided, the gender is returned. |
36
|
|
|
|
|
|
|
|
37
|
|
|
|
|
|
|
=cut |
38
|
|
|
|
|
|
|
|
39
|
|
|
|
|
|
|
package Game::CharacterSheetGenerator::HumanNames; |
40
|
9
|
|
|
9
|
|
57
|
use Modern::Perl; |
|
9
|
|
|
|
|
14
|
|
|
9
|
|
|
|
|
50
|
|
41
|
9
|
|
|
9
|
|
882
|
use utf8; |
|
9
|
|
|
|
|
18
|
|
|
9
|
|
|
|
|
38
|
|
42
|
|
|
|
|
|
|
|
43
|
|
|
|
|
|
|
require Exporter; |
44
|
|
|
|
|
|
|
our @ISA = qw(Exporter); |
45
|
|
|
|
|
|
|
our @EXPORT_OK = qw(human_name); |
46
|
|
|
|
|
|
|
|
47
|
|
|
|
|
|
|
sub one { |
48
|
289
|
|
|
289
|
0
|
1042
|
my $i = int(rand(scalar @_)); |
49
|
289
|
|
|
|
|
1051
|
return $_[$i]; |
50
|
|
|
|
|
|
|
} |
51
|
|
|
|
|
|
|
|
52
|
|
|
|
|
|
|
# http://www.stadt-zuerich.ch/content/prd/de/index/statistik/publikationsdatenbank/Vornamen-Verzeichnis/VVZ_2012.html |
53
|
|
|
|
|
|
|
|
54
|
|
|
|
|
|
|
my @names = qw{Aadhya F Aaliyah F Aanya F Aarna F Aarusha F Abiha F Abira F |
55
|
|
|
|
|
|
|
Abisana F Abishana F Abisheya F Ada F Adalia F Adelheid F Adelia F Adina F Adira |
56
|
|
|
|
|
|
|
F Adisa F Adisha F Adriana F Adriane F Adrijana F Aela F Afriela F Agata F |
57
|
|
|
|
|
|
|
Agatha F Aicha F Aikiko F Aiko F Aila F Ainara F Aischa F Aisha F Aissatou F |
58
|
|
|
|
|
|
|
Aiyana F Aiza F Aji F Ajshe F Akksaraa F Aksha F Akshaya F Alaa F Alaya F Alea F |
59
|
|
|
|
|
|
|
Aleeya F Alegria F Aleksandra F Alena F Alessandra F Alessia F Alexa F Alexandra |
60
|
|
|
|
|
|
|
F Aleyda F Aleyna F Alia F Alice F Alicia F Aliena F Alienor F Aliénor F Alija F |
61
|
|
|
|
|
|
|
Alina F Aline F Alisa F Alisha F Alissa F Alissia F Alix F Aliya F Aliyana F |
62
|
|
|
|
|
|
|
Aliza F Alizée F Allegra F Allizza F Alma F Almira F Alva F Alva-Maria F Alya F |
63
|
|
|
|
|
|
|
Alysha F Alyssa F Amalia F Amalya F Amanda F Amara F Amaris F Amber F Ambra F |
64
|
|
|
|
|
|
|
Amea F Amelia F Amelie F Amélie F Amina F Amira F Amor F Amora F Amra F Amy F |
65
|
|
|
|
|
|
|
Amy-Lou ? Ana F Anaahithaa F Anabell F Anabella F Anaëlle F Anaïs F Ananya F |
66
|
|
|
|
|
|
|
Anastasia F Anastasija F Anastazia F Anaya F Andeline F Andjela F Andrea F |
67
|
|
|
|
|
|
|
Anduena F Anela F Anesa F Angel ? Angela F Angelina F Angeline F Anik ? Anika F |
68
|
|
|
|
|
|
|
Anila F Anisa F Anise F Anisha F Anja F Ann F Anna F Anna-Malee F Annabel F |
69
|
|
|
|
|
|
|
Annabelle F Annalena F Anne F Anne-Sophie F Annica F Annicka F Annigna F Annik F |
70
|
|
|
|
|
|
|
Annika F Anouk F Antonet F Antonia F Antonina F Anusha F Aralyn F Ariane F |
71
|
|
|
|
|
|
|
Arianna F Ariel ? Ariela F Arina F Arisa F Arishmi F Arlinda F Arsema F Arwana F |
72
|
|
|
|
|
|
|
Arwen F Arya F Ashley F Ashmi F Asmin F Astrid F Asya F Athena F Aubrey F Audrey |
73
|
|
|
|
|
|
|
F Aurelia F Aurélie F Aurora F Ava F Avery F Avy F Aya F Ayana F Ayla F Ayleen F |
74
|
|
|
|
|
|
|
Aylin F Ayse F Azahel F Azra F Barfin F Batoul F Batya F Beatrice F Belén F |
75
|
|
|
|
|
|
|
Bella F Bente F Beril F Betel F Betelehim F Bleona F Bracha F Briana F Bronwyn F |
76
|
|
|
|
|
|
|
Bruchi F Bruna F Büsra F Caelynn F Caitlin F Caja F Callista F Camille F Cao F |
77
|
|
|
|
|
|
|
Carice F Carina F Carla F Carlotta F Carolina F Caroline F Cassandra F Castille |
78
|
|
|
|
|
|
|
F Cataleya F Caterina F Catherine F Céleste F Celia F Celina F Celine F Ceylin F |
79
|
|
|
|
|
|
|
Chana F Chanel F Chantal F Charielle F Charleen F Charlie ? Charlize F Charlott |
80
|
|
|
|
|
|
|
F Charlotte F Charly F Chavi F Chaya F Chiara F Chiara-Maé F Chinyere F Chléa F |
81
|
|
|
|
|
|
|
Chloe F Chloé F Chrisbely F Christiana F Christina F Ciara F Cilgia F Claire F |
82
|
|
|
|
|
|
|
Clara F Claudia F Clea F Cleo F Cleofe F Clodagh F Cloé F Coco F Colette F Coral |
83
|
|
|
|
|
|
|
F Coralie F Cyrielle F Daliah F Dalila F Dalilah F Dalina F Damiana F Damla F |
84
|
|
|
|
|
|
|
Dana F Daniela F Daria F Darija F Dean ? Deborah F Déborah-Isabel F Defne F |
85
|
|
|
|
|
|
|
Delaila F Delia F Delina F Derya F Deshira F Deva F Diana F Diara F Diarra F |
86
|
|
|
|
|
|
|
Diesa F Dilara F Dina F Dinora F Djurdjina F Dominique F Donatella F Dora F |
87
|
|
|
|
|
|
|
Dorina F Dunja F Eda F Edessa F Edith F Edna F Eduina F Eidi F Eileen F Ela F |
88
|
|
|
|
|
|
|
Elanur F Elda F Eldana F Elea F Eleanor F Elena F Eleni F Elenor F Eleonor F |
89
|
|
|
|
|
|
|
Eleonora F Elhana F Eliana F Elidiana F Eliel F Elif F Elin F Elina F Eline F |
90
|
|
|
|
|
|
|
Elinor F Elisa F Elisabeth F Elise F Eliska F Eliza F Ella F Ellen F Elliana F |
91
|
|
|
|
|
|
|
Elly F Elma F Elodie F Elona F Elora F Elsa F Elva F Elyssa F Emelie F Emi F |
92
|
|
|
|
|
|
|
Emilia F Emiliana F Emilie F Émilie F Emilija F Emily F Emma F Enis F Enna F |
93
|
|
|
|
|
|
|
Enrica F Enya F Erdina F Erika F Erin F Erina F Erisa F Erna F Erona F Erva F |
94
|
|
|
|
|
|
|
Esma F Esmeralda F Estée F Esteline F Estelle F Ester F Esther F Eteri F |
95
|
|
|
|
|
|
|
Euphrasie F Eva F Eve F Evelin F Eviana F Evita F Ewa F Eya F Fabia F Fabienne F |
96
|
|
|
|
|
|
|
Fatima F Fatma F Fay F Faye F Fe F Fedora F Felia F Felizitas F Fiamma F Filipa |
97
|
|
|
|
|
|
|
F Filippa F Filomena F Fina F Finja F Fiona F Fjolla F Flaminia F Flavia F Flor |
98
|
|
|
|
|
|
|
F Flora F Florence F Florina F Florita F Flurina F Franca F Francesca F |
99
|
|
|
|
|
|
|
Francisca F Franziska F Freija F Freya F Freyja F Frida F Gabriela F Gabrielle F |
100
|
|
|
|
|
|
|
Gaia F Ganiesha F Gaon F Gavisgaa F Gemma F Georgina F Ghazia F Gia F Giada F |
101
|
|
|
|
|
|
|
Gianna F Gila F Gioanna F Gioia F Giorgia F Gitty F Giulia F Greta F Grete F |
102
|
|
|
|
|
|
|
Gwenaelle F Gwendolin F Gyane F Hadidscha F Hadzera F Hana F Hanar F Hania F |
103
|
|
|
|
|
|
|
Hanna F Hannah F Hanni F Hédi ? Heidi F Helen F Helena F Helene F Helia F |
104
|
|
|
|
|
|
|
Heloise F Héloïse F Helya F Henna F Henrietta F Heran F Hermela F Hiba F Hinata |
105
|
|
|
|
|
|
|
F Hiteshree F Hodman F Honey F Iara F Ibtihal F Ida F Idil F Ilaria F Ileenia F |
106
|
|
|
|
|
|
|
Ilenia F Iman F Ina F Indira F Ines F Inés F Inez F Ira F Irene F Iria F Irina F |
107
|
|
|
|
|
|
|
Iris F Isabel F Isabela F Isabell F Isabella F Isabelle F Isra F Iva F Jada F |
108
|
|
|
|
|
|
|
Jael F Jaël F Jaelle F Jaelynn F Jalina F Jamaya F Jana F Jane F Jannatul F Jara |
109
|
|
|
|
|
|
|
F Jasmijn F Jasmin F Jasmina F Jayda F Jeanne F Jelisaveta F Jemina F Jenna F |
110
|
|
|
|
|
|
|
Jennifer F Jerishka F Jessica F Jesuela F Jil F Joan ? Joana F Joanna F Johanna |
111
|
|
|
|
|
|
|
F Jola F Joleen F Jolie F Jonna F Joseline F Josepha F Josephine F Joséphine F |
112
|
|
|
|
|
|
|
Joudia F Jovana F Joy F Judith F Jule F Juli F Julia F Julie F Juliette F Julija |
113
|
|
|
|
|
|
|
F Jully F Juna F Juno F Justine F Kahina F Kaja F Kalina F Kalista F Kapua F |
114
|
|
|
|
|
|
|
Karina F Karla F Karnika F Karolina F Kashfia F Kassiopeia F Kate F Katerina F |
115
|
|
|
|
|
|
|
Katharina F Kaya F Kayla F Kayley F Kayra F Kehla F Keira F Keren-Happuch F |
116
|
|
|
|
|
|
|
Keziah F Khadra F Khardiata F Kiana F Kiara F Kim F Kinda F Kira F Klara F Klea |
117
|
|
|
|
|
|
|
F Kostana F Kristina F Kristrún F Ksenija F Kugagini F Kyra F Ladina F Laetitia |
118
|
|
|
|
|
|
|
F Laila F Laís F Lakshmi F Lana F Lani F Lara F Laraina F Larina F Larissa F |
119
|
|
|
|
|
|
|
Laura F Laurelle F Lauri ? Laurianne F Lauryn F Lavin F Lavinia F Laya F Layana |
120
|
|
|
|
|
|
|
F Layla F Lea F Léa F Leah F Leana F Leandra F Leanne F Leia F Leilani-Yara F |
121
|
|
|
|
|
|
|
Lejla F Lelia F Lena F Leni F Lenia F Lenie F Lenja F Lenka F Lennie ? Leona F |
122
|
|
|
|
|
|
|
Leoni F Leonie F Léonie F Leonor F Leticia F Leya F Leyla F Leyre F Lia F Liana |
123
|
|
|
|
|
|
|
F Liane F Liann F Lianne F Liara F Liayana F Liba F Lidia F Lidija F Lijana F |
124
|
|
|
|
|
|
|
Lila-Marie F Lili F Lilia F Lilian F Liliane F Lilijana F Lilith F Lilja F Lilla |
125
|
|
|
|
|
|
|
F Lilli F Lilly F Lilly-Rose F Lilo F Lily F Lin F Lina F Linda F Line F Linn F |
126
|
|
|
|
|
|
|
Lioba F Liora F Lisa F Lisandra F Liselotte F Liv F Liva F Livia F Liz F Loa F |
127
|
|
|
|
|
|
|
Loe F Lokwa F Lola F Lorea F Loreen F Lorena F Loriana F Lorina F Lorisa F Lotta |
128
|
|
|
|
|
|
|
F Louanne F Louisa F Louise F Lovina F Lua F Luana F Luanda F Lucia F Luciana F |
129
|
|
|
|
|
|
|
Lucie F Lucy F Luisa F Luise F Lux ? Luzia F Lya F Lyna F Lynn F Lynna F Maëlle |
130
|
|
|
|
|
|
|
F Maelyn F Maëlys F Maeva F Magali F Magalie F Magdalena F Mahsa F Maira F |
131
|
|
|
|
|
|
|
Maisun F Maja F Maka F Malaeka F Malaika F Malea F Maléa F Malia F Malin F |
132
|
|
|
|
|
|
|
Malkif F Malky F Maltina F Malu F Manar F Manha F Manisha F Mara F Maram F Mare |
133
|
|
|
|
|
|
|
F Mareen F Maren F Margarida F Margherita F Margo F Margot F Maria F Mariangely |
134
|
|
|
|
|
|
|
F Maribel F Marie F Marie-Alice F Marietta F Marija F Marika F Mariko F Marina F |
135
|
|
|
|
|
|
|
Marisa F Marisol F Marissa F Marla F Marlen F Marlene F Marlène F Marlin F Marta |
136
|
|
|
|
|
|
|
F Martina F Martje F Mary F Maryam F Mascha F Mathilda F Matilda F Matilde F |
137
|
|
|
|
|
|
|
Mauadda F Maxine F Maya F Mayas F Mayla F Maylin F Mayra F Mayumi F Medea F |
138
|
|
|
|
|
|
|
Medina F Meena F Mehjabeen F Mehnaz F Meila F Melanie F Mélanie F Melek F Melian |
139
|
|
|
|
|
|
|
F Melike F Melina F Melisa F Melissa F Mélissa F Melka F Melyssa F Mena F Meret |
140
|
|
|
|
|
|
|
F Meri F Merry F Meryem F Meta F Mia F Mía F Michal F Michelle F Mihaela F Mila |
141
|
|
|
|
|
|
|
F Milania F Milena F Milica F Milja F Milla F Milou F Mina F Mingke F Minna F |
142
|
|
|
|
|
|
|
Minu F Mira F Miray F Mirdie F Miriam F Mirjam F Mirta F Miya F Miyu F Moa F |
143
|
|
|
|
|
|
|
Moena F Momo F Momoco F Mona F Morea F Mubera F Muriel F Mylène F Myriam F N'Dea |
144
|
|
|
|
|
|
|
F Nabihaumama F Nadija F Nadin F Nadja F Nael ? Naemi F Naila F Naïma F Naina F |
145
|
|
|
|
|
|
|
Naliya F Nandi F Naomi F Nara F Naraya F Nardos F Nastasija F Natalia F Natalina |
146
|
|
|
|
|
|
|
F Natania F Natascha F Nathalie F Nava F Navida F Navina F Nayara F Nea F Neda F |
147
|
|
|
|
|
|
|
Neea F Nejla F Nela F Nepheli F Nera F Nerea F Nerine F Nesma F Nesrine F Neva F |
148
|
|
|
|
|
|
|
Nevia F Nevya F Nico ? Nicole F Nika F Nikita F Nikolija F Nikolina F Nina F |
149
|
|
|
|
|
|
|
Nine F Nirya F Nisa F Nisha F Nives F Noa ? Noé ? Noë F Noée F Noelia F Noemi F |
150
|
|
|
|
|
|
|
Noémie F Nola F Nora F Nordon F Norea F Norin F Norina F Norlha F Nour F Nova F |
151
|
|
|
|
|
|
|
Nóva F Nubia F Nuo F Nura F Nurah F Nuray F Nuria F Nuriyah F Nusayba F Oceane F |
152
|
|
|
|
|
|
|
Oda F Olive F Olivia F Olsa F Oluwashayo F Ornela F Ovia F Pamela-Anna F Paola F |
153
|
|
|
|
|
|
|
Pattraporn F Paula F Paulina F Pauline F Penelope F Pepa F Perla F Pia F Pina F |
154
|
|
|
|
|
|
|
Rabia F Rachel F Rahel F Rahela F Raïssa F Raizel F Rajana F Rana F Ranim F |
155
|
|
|
|
|
|
|
Raphaela F Raquel F Rayan ? Rejhana F Rejin F Réka F Renata F Rhea F |
156
|
|
|
|
|
|
|
Rhynisha-Anna F Ria F Riga F Rijona F Rina F Rita F Rivka F Riya F Roberta F |
157
|
|
|
|
|
|
|
Robin ? Robyn F Rohzerin F Róisín F Romina F Romy F Ronja F Ronya F Rosa F Rose |
158
|
|
|
|
|
|
|
F Rosina F Roxane F Royelle F Rozen F Rubaba F Rubina F Ruby F Rufina F Rukaye F |
159
|
|
|
|
|
|
|
Rumi ? Rym F Saanvika F Sabrina F Sadia F Safiya F Sahira F Sahra F Sajal F |
160
|
|
|
|
|
|
|
Salma F Salome F Salomé F Samantha F Samina F Samira F Samira-Aliyah F |
161
|
|
|
|
|
|
|
Samira-Mukaddes F Samruddhi F Sania F Sanna F Sara F Sarah F Sarahi F Saraia F |
162
|
|
|
|
|
|
|
Saranda F Saray F Sari F Sarina F Sasha F Saskia F Savka F Saya F Sayema F |
163
|
|
|
|
|
|
|
Scilla F Sejla F Selene F Selihom F Selina F Selma F Semanur F Sena F Sephora F |
164
|
|
|
|
|
|
|
Serafima F Serafina F Serafine F Seraina F Seraphina F Seraphine F Serena F |
165
|
|
|
|
|
|
|
Serra F Setareh F Shan F Shanar F Shathviha F Shayenna F Shayna F Sheindel F |
166
|
|
|
|
|
|
|
Shireen F Shirin F Shiyara F Shreshtha F Sia F Sidona F Siena F Sienna F Siiri F |
167
|
|
|
|
|
|
|
Sila F Silja F Silvanie-Alison F Silvia F Simea F Simi F Simona F Sina F Sira F |
168
|
|
|
|
|
|
|
Sirajum F Siri F Sirija F Sivana F Smilla F Sofia F Sofia-Margarita F Sofie F |
169
|
|
|
|
|
|
|
Sofija F Solea F Soleil F Solène F Solenn F Sonia F Sophia F Sophie F Sora F |
170
|
|
|
|
|
|
|
Soraya F Sosin F Sriya F Stella F Stina F Su F Subah F Suela F Suhaila F Suleqa |
171
|
|
|
|
|
|
|
F Sumire F Summer F Syria F Syrina F Tabea F Talina F Tamara F Tamasha F Tamina |
172
|
|
|
|
|
|
|
F Tamiya F Tara F Tatjana F Tayla F Tayscha F Tea F Tenzin ? Teodora F Tessa F |
173
|
|
|
|
|
|
|
Tharusha F Thea F Theniya F Tiana F Tijana F Tilda F Timea F Timeja F Tina F |
174
|
|
|
|
|
|
|
Tomma F Tonia F Tsiajara F Tuana F Tyra F Tzi ? Uendi F Uma F Urassaya F Vailea |
175
|
|
|
|
|
|
|
F Valentina F Valentine F Valeria F Valerie F Vanessa F Vanja F Varshana F Vella |
176
|
|
|
|
|
|
|
F Vera F Victoria F Viktoria F Vinda F Viola F Vivianne F Vivien F Vivienne F |
177
|
|
|
|
|
|
|
Wanda F Wayane F Wilma F Xin F Xingchen F Yael F Yaël F Yamina F Yang F Yara F |
178
|
|
|
|
|
|
|
Yasmine F Yeilin F Yen F Yersalm F Yesenia F Yeva F Yi F Yildiz-Kiymet F Ying ? |
179
|
|
|
|
|
|
|
Yixin F Ylvi F Yocheved F Yoko F Yosan F Yosmely F Yuen F Yuhan F Yuna F Yvaine |
180
|
|
|
|
|
|
|
F Zahraa F Zaina F Zazie F Zeinab F Zelda F Zeliha F Zenan F Zerya F Zeta F |
181
|
|
|
|
|
|
|
Zeyna F Zeynep F Ziporah F Zivia F Zoe F Zoé F Zoë F Zoë-Sanaa F Zoey F Zohar F |
182
|
|
|
|
|
|
|
Zoi F Zuri F Aadil M Aaron M Abdimaalik M Abdirahman M Abdul M Abdullah M Abi M |
183
|
|
|
|
|
|
|
Abraham M Abrar M Abubakar M Achmed M Adam M Adan M Adesh M Adhrit M Adil M |
184
|
|
|
|
|
|
|
Adiyan M Adrian M Adriano M Adrien M Adrijan M Adthish M Advay M Advik M Aeneas |
185
|
|
|
|
|
|
|
M Afonso M Agustín M Ahammed M Ahnaf M Ahron M Aiden M Ailo M Aimo M Ajan M |
186
|
|
|
|
|
|
|
Ajdin M Ajish M Akil M Akilar M Akira M Akito M Aksayan M Alan M Aldin M Aldion |
187
|
|
|
|
|
|
|
M Alec M Alejandro M Aleksa M Aleksandar M Aleksander M Aleksandr M Alem M |
188
|
|
|
|
|
|
|
Alessandro M Alessio M Alex M Alexander M Alexandre M Alexandru M Alexey M |
189
|
|
|
|
|
|
|
Alexis M Alfred M Ali M Allison M Almir M Alois M Altin M Aly M Amael M Aman M |
190
|
|
|
|
|
|
|
Amar M Amaury M Amedeo M Ami M Amil M Amin M Amir M Amirhan M Amirthesh M Ammar |
191
|
|
|
|
|
|
|
M Amogh M Anaël M Anakin M Anas M Anatol M Anatole M Anay M Anayo M Andi M |
192
|
|
|
|
|
|
|
Andreas M Andrej M Andrés M Andrey M Andri M Andrin M Andriy M Andy M Aneesh M |
193
|
|
|
|
|
|
|
Anes M Angelo M Anoush M Anqi M Antoine M Anton M Antonio M António M Anua M |
194
|
|
|
|
|
|
|
Anush M Arab M Arafat M Aramis M Aras M Arbion M Arda M Ardit M Arham M Arian M |
195
|
|
|
|
|
|
|
Arianit M Arijon M Arin M Aris M Aritra M Ariya M Arlind M Arman M Armin M |
196
|
|
|
|
|
|
|
Arnaud M Arne M Arno M Aron M Arsène M Art M Artemij M Arthur M Arturo M Arvid M |
197
|
|
|
|
|
|
|
Arvin M Aryan M Arye M Aswad M Atharv M Attila M Attis M Aulon M Aurel M Aurelio |
198
|
|
|
|
|
|
|
M Austin M Avinash M Avrohom M Axel M Ayan M Ayano M Ayham M Ayman M Aymar M |
199
|
|
|
|
|
|
|
Aymon M Azaan M Azad M Azad-Can M Bailey M Balthazar M Barnaba M Barnabas M |
200
|
|
|
|
|
|
|
Basil M Basilio M Bátor M Beda M Bela M Ben M Benart M Benjamin M Bennet M Benno |
201
|
|
|
|
|
|
|
M Berend M Berktan M Bertal M Besir M Bilal M Bilgehan M Birk M Bjarne M Bleart |
202
|
|
|
|
|
|
|
M Blend M Blendi M Bo M Bogdan M Bolaji M Bora M Boris M Brady M Brandon M |
203
|
|
|
|
|
|
|
Breyling M Brice M Bruce M Bruno M Bryan M Butrint M Caleb M Camil M Can M Cário |
204
|
|
|
|
|
|
|
M Carl M Carlo M Carlos M Carmelo M Cas M Caspar M Cedric M Cédric M Célestin M |
205
|
|
|
|
|
|
|
Celestino M Cemil-Lee M César M Chaim M Chandor M Charles M Chilo M Chris M |
206
|
|
|
|
|
|
|
Christian M Christopher M Christos M Ciaran M Cillian M Cla M Claudio M Colin M |
207
|
|
|
|
|
|
|
Collin M Connor M Conrad M Constantin M Corey M Cosmo M Cristian M Curdin M |
208
|
|
|
|
|
|
|
Custavo M Cynphael M Cyprian M Cyrill M Daan M Dagemawi M Daha M Dalmar M Damian |
209
|
|
|
|
|
|
|
M Damián M Damien M Damjan M Daniel M Daniele M Danilo M Danny M Dareios M Darel |
210
|
|
|
|
|
|
|
M Darian M Dario M Daris M Darius M Darwin M Davi M David M Dávid M Davide M |
211
|
|
|
|
|
|
|
Davin M Davud M Denis M Deniz M Deon M Devan M Devin M Diago M Dian M Diar M |
212
|
|
|
|
|
|
|
Diego M Dilom M Dimitri M Dino M Dion M Dionix M Dior M Dishan M Diyari M Djamal |
213
|
|
|
|
|
|
|
M Djamilo M Domenico M Dominic M Dominik M Donart M Dorian M Dries M Drisar M |
214
|
|
|
|
|
|
|
Driton M Duart M Duarte M Durgut M Durim M Dylan M Ebu M Ebubeker M Edgar M Edi |
215
|
|
|
|
|
|
|
M Edon M Édouard M Edrian M Edward M Edwin M Efehan M Efraim M Ehimay M Einar M |
216
|
|
|
|
|
|
|
Ekrem M Eldi M Eldian M Elia M Eliah M Elias M Elija M Elijah M Elio M Eliot M |
217
|
|
|
|
|
|
|
Elliot M Elouan M Élouan M Eloy M Elvir M Emanuel M Emil M Emilio M Emin M Emir |
218
|
|
|
|
|
|
|
M Emmanuel M Endrit M Enea M Enes M Engin M Engjëll M Ennio M Enrico M Enrique M |
219
|
|
|
|
|
|
|
Ensar M Enzo M Erblin M Erd M Eren M Ergin M Eric M Erik M Erind M Erion M Eris |
220
|
|
|
|
|
|
|
M Ernest-Auguste M Erol M Eron M Ersin M Ervin M Erwin M Essey M Ethan M Etienne |
221
|
|
|
|
|
|
|
M Evan M Ewan M Eymen M Ezio M Fabian M Fabiàn M Fabio M Fabrice M Fadri M Faris |
222
|
|
|
|
|
|
|
M Faruk M Federico M Félicien M Felipe M Felix M Ferdinand M Fernando M Filip M |
223
|
|
|
|
|
|
|
Filipe M Finlay M Finn M Fionn M Firat M Fitz-Patrick M Flavio M Flori M Florian |
224
|
|
|
|
|
|
|
M Florin M Flurin M Flynn M Francesco M Frederic M Frederick M Frederik M Frédo |
225
|
|
|
|
|
|
|
M Fridtjof M Fritz M Furkan M Fynn M Gabriel M Gabriele M Gael M Galin M Gaspar |
226
|
|
|
|
|
|
|
M Gaspard M Gavin M Geeth M Genc M Georg M Gerald M Geronimo M Getoar M Gian M |
227
|
|
|
|
|
|
|
Gian-Andri M Gianluca M Gianno M Gibran M Gibril M Gil M Gil-Leo M Gilles M Gion |
228
|
|
|
|
|
|
|
M Giona M Giovanni M Giuliano M Giuseppe M Glen M Glenn M Gonçalo M Gondini M |
229
|
|
|
|
|
|
|
Gregor M Gregory M Güney M Guilien M Guillaume M Gustav M Gustavo M Gusti M |
230
|
|
|
|
|
|
|
Haakon M Haci M Hadeed M Halil M Hamad M Hamid M Hamza M Hannes M Hans M Hari M |
231
|
|
|
|
|
|
|
Haris M Harry M Hassan M Heath M Hektor M Hendri M Henri M Henrik M Henry M |
232
|
|
|
|
|
|
|
Henus M Hugo M Hussein M Huw M Iago M Ian M Iasu M Ibrahim M Idan M Ieremia M |
233
|
|
|
|
|
|
|
Ifran M Iheb M Ikechi M Ilai M Ilarion M Ilian M Ilias M Ilja M Ilyes M Ioav M |
234
|
|
|
|
|
|
|
Iorek M Isaac M Isak M Ishaan M Ishak M Isi M Isidor M Ismael M Ismaël M Itay M |
235
|
|
|
|
|
|
|
Ivan M Iven M Ivo M Jack M Jacob M Jacques M Jaden M Jae-Eun M Jago M Jahongir M |
236
|
|
|
|
|
|
|
Jake M Jakob M Jakov M Jakub M Jamal M Jamen M James M Jamie M Jamiro M Jan M |
237
|
|
|
|
|
|
|
Janick M Janis M Jann M Jannes M Jannik M Jannis M Janos M János M Janosch M |
238
|
|
|
|
|
|
|
Jari M Jaron M Jasha M Jashon M Jason M Jasper M Javier M Jawhar M Jay M Jayden |
239
|
|
|
|
|
|
|
M Jayme M Jean M Jechiel M Jemuël M Jens M Jeremias M Jeremy M Jerlen M Jeroen M |
240
|
|
|
|
|
|
|
Jérôme M Jerun M Jhun M Jim M Jimmy M Jitzchak M Joah M Joaquin M Joel M Joël M |
241
|
|
|
|
|
|
|
Johan M Johann M Johannes M Johansel M John M Johnny M Jon M Jona M Jonah M |
242
|
|
|
|
|
|
|
Jonas M Jonathan M Joona M Jordan M Jorin M Joris M Jose M Josef M Joseph-Lion M |
243
|
|
|
|
|
|
|
Josh M Joshua M Jovan M Jovin M Jules M Julian M Julien M Julius M Jun-Tao M |
244
|
|
|
|
|
|
|
Junior M Junis M Juri M Jurij M Justin M Jythin M Kaan M Kailash M Kaitos M |
245
|
|
|
|
|
|
|
Kajeesh M Kajetan M Kardo M Karim M Karl M Karl-Nikolaus M Kasimir M Kaspar M |
246
|
|
|
|
|
|
|
Kassim M Kathiravan M Kaynaan M Kaynan M Keanan M Keano M Kejwan M Kenai M |
247
|
|
|
|
|
|
|
Kennedy M Kento M Kerim M Kevin M Khodor M Kian M Kieran M Kilian M Kimon M |
248
|
|
|
|
|
|
|
Kiran M Kiyan M Koji M Konrad M Konstantin M Kosmo M Krishang M Krzysztof M |
249
|
|
|
|
|
|
|
Kuzey M Kyan M Kyle M Labib M Lakishan M Lamoral M Lanyu M Laris M Lars M Larton |
250
|
|
|
|
|
|
|
M Lasse M Laurent M Laurenz M Laurin M Lawand M Lawrence M Lazar M Lean M |
251
|
|
|
|
|
|
|
Leander M Leandro M Leano M Leart M Leas M Leen M Leif M Len M Lenart M Lend M |
252
|
|
|
|
|
|
|
Lendrit M Lenert M Lenn M Lennard M Lennart M Lenno M Lennox M Lenny M Leno M |
253
|
|
|
|
|
|
|
Leo M Leon M León M Léon M Leonard M Leonardo M Leonel M Leonidas M Leopold M |
254
|
|
|
|
|
|
|
Leopoldo M Leron M Levi M Leviar M Levin M Levis M Lewis M Liam M Lian M Lias M |
255
|
|
|
|
|
|
|
Liél M Lieven M Linard M Lino M Linor M Linus M Linus-Lou M Lio M Lion M Lionel |
256
|
|
|
|
|
|
|
M Lior M Liun M Livio M Lizhang M Lloyd M Logan M Loïc M Lois M Long M Lono M |
257
|
|
|
|
|
|
|
Lorenz M Lorenzo M Lorian M Lorik M Loris M Lou M Louay M Louis M Lovis M Lowell |
258
|
|
|
|
|
|
|
M Luan M Luc M Luca M Lucas M Lucian M Lucien M Lucio M Ludwig M Luis M Luís M |
259
|
|
|
|
|
|
|
Luk M Luka M Lukas M Lumen M Lyan M Maaran M Maddox M Mads M Mael M Maél M Máel |
260
|
|
|
|
|
|
|
M Mahad M Mahir M Mahmoud M Mailo M Maksim M Maksut M Malik M Manfred M Máni M |
261
|
|
|
|
|
|
|
Manuel M Manuele M Maor M Marc M Marcel M Marco M Marek M Marino M Marius M Mark |
262
|
|
|
|
|
|
|
M Marko M Markus M Marley M Marlon M Marouane M Marti M Martim M Martin M Marvin |
263
|
|
|
|
|
|
|
M Marwin M Mason M Massimo M Matay M Matej M Mateja M Mateo M Matheo M Mathéo M |
264
|
|
|
|
|
|
|
Matheus M Mathias M Mathieu M Mathis M Matia M Matija M Matisjohu M Mats M |
265
|
|
|
|
|
|
|
Matteo M Matthew M Matthias M Matthieu M Matti M Mattia M Mattis M Maurice M |
266
|
|
|
|
|
|
|
Mauricio M Maurin M Maurizio M Mauro M Maurus M Max M Maxence M Maxim M Maxime M |
267
|
|
|
|
|
|
|
Maximilian M Maximiliano M Maximilien M Maxmilan M Maylon M Median M Mehmet M |
268
|
|
|
|
|
|
|
Melis M Melvin M Memet M Memet-Deniz M Menachem M Meo M Meris M Merlin M Mert M |
269
|
|
|
|
|
|
|
Mete M Methma M Mias M Micah M Michael M Michele M Miguel M Mihailo M Mihajlo M |
270
|
|
|
|
|
|
|
Mika M Mike M Mikias M Mikka M Mikko M Milad M Milan M Milo M Milos M Minyou M |
271
|
|
|
|
|
|
|
Mio M Miran M Miraxh M Miro M Miron M Mishkin M Mithil M Mohamed M Mohammed M |
272
|
|
|
|
|
|
|
Moische M Momodou M Mordechai M Moreno M Moritz M Morris M Moses M Mubaarak M |
273
|
|
|
|
|
|
|
Muhamet M Muhammad M Muhammed M Muhannad M Muneer M Munzur M Mustafa M Nadir M |
274
|
|
|
|
|
|
|
Nahuel M Naïm M Nando M Nasran M Nathan M Nathanael M Natnael M Nelio M Nelson M |
275
|
|
|
|
|
|
|
Nenad M Neo M Néo M Nepomuk M Nevan M Nevin M Nevio M Nic M Nick M Nick-Nolan M |
276
|
|
|
|
|
|
|
Niclas M Nicolas M Nicolás M Niilo M Nik M Nikhil M Niklas M Nikola M Nikolai M |
277
|
|
|
|
|
|
|
Nikos M Nilas M Nils M Nima M Nimo M Nino M Niven M Nnamdi M Noah M Noam M Noan |
278
|
|
|
|
|
|
|
M Noè M Noel M Noël M Nurhat M Nuri M Nurullmubin M Odarian M Odin M Ognjen M |
279
|
|
|
|
|
|
|
Oliver M Olufemi M Omar M Omer M Ömer M Orell M Orlando M Oscar M Oskar M Osman |
280
|
|
|
|
|
|
|
M Otávio M Otto M Ousmane M Pablo M Pablo-Battista M Paolo M Paris M Pascal M |
281
|
|
|
|
|
|
|
Patrice M Patrick M Patrik M Paul M Pavle M Pawat M Pax M Paxton M Pedro M |
282
|
|
|
|
|
|
|
Peppino M Pessach M Peven M Phil M Philemon M Philip M Philipp M Phineas M |
283
|
|
|
|
|
|
|
Phoenix-Rock M Piero M Pietro M Pio M Pjotr M Prashanth M Quentin M Quinnlan M |
284
|
|
|
|
|
|
|
Quirin M Rafael M Raffael M Raffaele M Rainer M Rami M Ramí M Ran M Raoul M |
285
|
|
|
|
|
|
|
Raphael M Raphaël M Rasmus M Raúl M Ray M Rayen M Reban M Reda M Refoel M Rejan |
286
|
|
|
|
|
|
|
M Relja M Remo M Remy M Rémy M Rénas M Rens M Resul M Rexhep M Rey M Riaan M |
287
|
|
|
|
|
|
|
Rian M Riccardo M Richard M Rico M Ridley M Riley M Rimon M Rinaldo M Rio M Rion |
288
|
|
|
|
|
|
|
M Riyan M Riza M Roa M Roald M Robert M Rodney-Jack M Rodrigo M Roman M Romeo M |
289
|
|
|
|
|
|
|
Ronan M Rory M Rouven M Roy M Ruben M Rúben M Rubino M Rufus M Ryan M Saakith M |
290
|
|
|
|
|
|
|
Saatvik M Sabir M Sabit M Sacha M Sahl M Salaj M Salman M Salomon M Sami M |
291
|
|
|
|
|
|
|
Sami-Abdeljebar M Sammy M Samuel M Samuele M Samy M Sandro M Santiago M Saqlain |
292
|
|
|
|
|
|
|
M Saranyu M Sascha M Sava M Schloime M Schmuel M Sebastian M Sebastián M Selim M |
293
|
|
|
|
|
|
|
Semih M Semir M Semyon M Senthamil M Serafin M Seraphin M Seth M Sevan M Severin |
294
|
|
|
|
|
|
|
M Seya M Seymen M Seymour M Shafin M Shahin M Shaor M Sharon M Shayaan M Shayan |
295
|
|
|
|
|
|
|
M Sheerbaz M Shervin M Shian M Shiraz M Shlomo M Shon M Siddhesh M Silas M |
296
|
|
|
|
|
|
|
Sileye M Silvan M Silvio M Simeon M Simon M Sirak M Siro M Sivan M Soel M Sol M |
297
|
|
|
|
|
|
|
Solal M Souleiman M Sriswaralayan M Sruli M Stefan M Stefano M Stephan M Steven |
298
|
|
|
|
|
|
|
M Stian M Strahinja M Sumedh M Suryansh M Sven M Taavi M Taha M Taner M Tanerau |
299
|
|
|
|
|
|
|
M Tao M Tarik M Tashi M Tassilo M Tayshawn M Temuulen M Teo M Teris M Thelonious |
300
|
|
|
|
|
|
|
M Thenujan M Theo M Theodor M Thiago M Thierry M Thies M Thijs M Thilo M Thom M |
301
|
|
|
|
|
|
|
Thomas M Thor M Tiago M Tiemo M Til M Till M Tilo M Tim M Timo M Timon M |
302
|
|
|
|
|
|
|
Timothée M Timotheos M Timothy M Tino M Titus M Tjade M Tjorben M Tobias M Tom M |
303
|
|
|
|
|
|
|
Tomás M Tomeo M Tosco M Tristan M Truett M Tudor M Tugra M Turan M Tyson M Uari |
304
|
|
|
|
|
|
|
M Uros M Ursin M Usuy M Uwais M Valentin M Valerian M Valerio M Vangelis M |
305
|
|
|
|
|
|
|
Vasilios M Vico M Victor M Viggo M Vihaan M Viktor M Villads M Vincent M Vinzent |
306
|
|
|
|
|
|
|
M Vinzenz M Vito M Vladimir M Vleron M Vo M Vojin M Wander M Wanja M William M |
307
|
|
|
|
|
|
|
Wim M Xavier M Yaakov M Yadiel M Yair M Yamin M Yanhao M Yanic M Yanik M Yanis M |
308
|
|
|
|
|
|
|
Yann M Yannick M Yannik M Yannis M Yardil M Yared M Yari M Yasin M Yasir M Yavuz |
309
|
|
|
|
|
|
|
M Yecheskel M Yehudo M Yeirol M Yekda M Yellyngton M Yiannis M Yifan M Yilin M |
310
|
|
|
|
|
|
|
Yitzchok M Ylli M Yoan M Yohannes M Yonatan M Yonathan M Yosias M Younes M |
311
|
|
|
|
|
|
|
Yousef M Yousif M Yousuf M Youwei M Ysaac M Yuma M Yussef M Yusuf M Yves M Zaim |
312
|
|
|
|
|
|
|
M Zeno M Zohaq M Zuheyb M Zvi M}; |
313
|
|
|
|
|
|
|
|
314
|
|
|
|
|
|
|
# This slow setting allows us to find errors. |
315
|
|
|
|
|
|
|
my %names; |
316
|
|
|
|
|
|
|
my $last = ""; |
317
|
|
|
|
|
|
|
while (@names) { |
318
|
|
|
|
|
|
|
my $key = shift(@names); |
319
|
|
|
|
|
|
|
my $val = shift(@names); |
320
|
|
|
|
|
|
|
die "$last $key" unless $val =~ /^[FM?]$/; |
321
|
|
|
|
|
|
|
$names{$key} = $val; |
322
|
|
|
|
|
|
|
$last = $val; |
323
|
|
|
|
|
|
|
} |
324
|
|
|
|
|
|
|
|
325
|
|
|
|
|
|
|
sub human_name { |
326
|
291
|
|
66
|
291
|
0
|
87059
|
my $name = shift || one(keys %names); |
327
|
291
|
|
|
|
|
25281
|
my $gender = $names{$name}; |
328
|
291
|
|
|
|
|
1277
|
return ($name, $gender); |
329
|
|
|
|
|
|
|
} |
330
|
|
|
|
|
|
|
|
331
|
|
|
|
|
|
|
1; |