Initial commit
This commit is contained in:
27
Default_values/default prob.csv
Normal file
27
Default_values/default prob.csv
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,9,9,9,9,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
|
1
Default_values/nameprob.csv
Normal file
1
Default_values/nameprob.csv
Normal file
@ -0,0 +1 @@
|
|||||||
|
|
|
20
Default_values/names.csv
Normal file
20
Default_values/names.csv
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
Uldreyin
|
||||||
|
Narbeth
|
||||||
|
Alluin
|
||||||
|
Evindal
|
||||||
|
Kesefeon
|
||||||
|
Oncith
|
||||||
|
Uevareth
|
||||||
|
Galaeron
|
||||||
|
Abarat
|
||||||
|
Elorshin
|
||||||
|
Estelar
|
||||||
|
Cailu
|
||||||
|
Haldir
|
||||||
|
Vulred
|
||||||
|
Ivaran
|
||||||
|
Ailen
|
||||||
|
Hagre
|
||||||
|
Nelaeryn
|
||||||
|
Sythaeryn
|
||||||
|
Ryfon
|
|
14
README
Normal file
14
README
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
A lightweight python machine-learning script for generating fantasy names
|
||||||
|
|
||||||
|
Installation guide:
|
||||||
|
|
||||||
|
1) Install Python3 with random and csv modules on your computer
|
||||||
|
2) Download the contents of this repo into any folder on your computer
|
||||||
|
3) Replace the names in names.csv with the sample names of your choice
|
||||||
|
4) Empty all contents from nameprob.csv
|
||||||
|
[OPTIONNAL] 5) Open namegen.py in any text editor and change the value of race_name to your desired race's name (between '')
|
||||||
|
|
||||||
|
Usage guide:
|
||||||
|
|
||||||
|
1) Start a python instance and naviguate to the folder where the files are located
|
||||||
|
2) Run the script
|
27
default prob.csv
Normal file
27
default prob.csv
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,9,9,9,9,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
||||||
|
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
|
|
186
namegen.py
Normal file
186
namegen.py
Normal file
@ -0,0 +1,186 @@
|
|||||||
|
import csv
|
||||||
|
from random import *
|
||||||
|
global letter_count
|
||||||
|
letter_count = 0
|
||||||
|
race_name = 'elf'
|
||||||
|
|
||||||
|
class letter():
|
||||||
|
# Each letter has a lowercase and an uppercase character and
|
||||||
|
# identifiers as a vowel or consonant
|
||||||
|
def __init__(self, lowerchar, upperchar, is_vowel, is_consonant):
|
||||||
|
global letter_count
|
||||||
|
self.upperchar = upperchar
|
||||||
|
self.lowerchar = lowerchar
|
||||||
|
self.is_vowel = is_vowel
|
||||||
|
self.is_consonant = is_consonant
|
||||||
|
self.num = letter_count
|
||||||
|
letter_count += 1
|
||||||
|
|
||||||
|
def normalize(prob):
|
||||||
|
global alphabet
|
||||||
|
new_prob = prob
|
||||||
|
for i in range(0,len(alphabet)):
|
||||||
|
total = 0
|
||||||
|
for j in range(0,len(alphabet)):
|
||||||
|
total+=prob[i][j]
|
||||||
|
if (total > 0):
|
||||||
|
for j in range(0,len(alphabet)):
|
||||||
|
new_prob[i][j] = prob[i][j]/total
|
||||||
|
else:
|
||||||
|
for j in range(0,len(alphabet)):
|
||||||
|
new_prob[i][j] = len(alphabet)**(-1)
|
||||||
|
return new_prob
|
||||||
|
|
||||||
|
# Define the alphabet
|
||||||
|
global alphabet
|
||||||
|
alphabet = [letter('a','A',True,False),
|
||||||
|
letter('b','B',False,True),
|
||||||
|
letter('c','C',False,True),
|
||||||
|
letter('d','D',False,True),
|
||||||
|
letter('e','E',True,False),
|
||||||
|
letter('f','F',False,True),
|
||||||
|
letter('g','G',False,True),
|
||||||
|
letter('h','H',False,True),
|
||||||
|
letter('i','I',True,False),
|
||||||
|
letter('j','J',False,True),
|
||||||
|
letter('k','K',False,True),
|
||||||
|
letter('l','L',False,True),
|
||||||
|
letter('m','M',False,True),
|
||||||
|
letter('n','N',False,True),
|
||||||
|
letter('o','O',True,False),
|
||||||
|
letter('p','P',False,True),
|
||||||
|
letter('q','Q',False,True),
|
||||||
|
letter('r','R',False,True),
|
||||||
|
letter('s','S',False,True),
|
||||||
|
letter('t','T',False,True),
|
||||||
|
letter('u','U',True,False),
|
||||||
|
letter('v','V',False,True),
|
||||||
|
letter('w','W',False,True),
|
||||||
|
letter('x','X',False,True),
|
||||||
|
letter('y','Y',True,True),
|
||||||
|
letter('z','Z',False,True )
|
||||||
|
]
|
||||||
|
|
||||||
|
# Initialize probability matrix
|
||||||
|
# prob[i][j] = probability of letter j after letter i
|
||||||
|
global prob
|
||||||
|
file_name = 'default prob.csv' # should initialize to all 0s
|
||||||
|
prob = []
|
||||||
|
with open(file_name,newline='') as csvfile:
|
||||||
|
prob_reader = csv.reader(csvfile, delimiter=',', quotechar='|')
|
||||||
|
for row in prob_reader:
|
||||||
|
prob.append([])
|
||||||
|
for num in row:
|
||||||
|
prob[len(prob)-1].append(float(num))
|
||||||
|
|
||||||
|
# read list of pre-generated names. Names should be stored one per linein file
|
||||||
|
file_name = 'names.csv'
|
||||||
|
with open(file_name, newline='') as csvfile:
|
||||||
|
name_reader = csv.reader(csvfile, delimiter=',', quotechar='|') # Record file content
|
||||||
|
for names in name_reader: # Loop over names in list
|
||||||
|
name = names[0]
|
||||||
|
# Loop over letters in the current name
|
||||||
|
for i in range(0,len(name)-1):
|
||||||
|
letter1 = name[i]
|
||||||
|
letter2 = name[i+1]
|
||||||
|
num1 = 0
|
||||||
|
num2 = 0
|
||||||
|
for i in range(0, len(alphabet)):
|
||||||
|
if letter1 == alphabet[i].lowerchar or letter1 == alphabet[i].upperchar:
|
||||||
|
num1 = alphabet[i].num
|
||||||
|
if letter2 == alphabet[i]. lowerchar or letter2 == alphabet[i].upperchar:
|
||||||
|
num2 = alphabet[i].num
|
||||||
|
# Add one to the number of times letter number i is followed by letter number i
|
||||||
|
prob[num1][num2] += 1
|
||||||
|
|
||||||
|
# Normalize the probability matrix
|
||||||
|
prob = normalize(prob)
|
||||||
|
|
||||||
|
#Write probability matrix to file. This file will be read by the generator
|
||||||
|
file_name = 'nameprob.csv'
|
||||||
|
with open(file_name, 'w', newline='') as csvfile:
|
||||||
|
prob_writer = csv.writer(csvfile,delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL)
|
||||||
|
for i in range(0,len(alphabet)):
|
||||||
|
prob_writer.writerow(prob[i])
|
||||||
|
|
||||||
|
|
||||||
|
def rand_int(x1,x2):
|
||||||
|
# Generate random integer number between x1 and x2
|
||||||
|
r = int( int(x1) + random()* (int(x2)-int(x1)) )
|
||||||
|
return r
|
||||||
|
|
||||||
|
def make_name():
|
||||||
|
# Determine name length
|
||||||
|
lmin = 3 # Minimum length
|
||||||
|
lmax = 10 # Maximum length
|
||||||
|
name_length = rand_int(lmin,lmax)
|
||||||
|
|
||||||
|
# Initialize string
|
||||||
|
my_name = ""
|
||||||
|
my_name_nums = []
|
||||||
|
|
||||||
|
prev_vowel = False # Was the previous letter a vowel
|
||||||
|
prev_consonant = False # Was it a consonant
|
||||||
|
prev2_vowel = False # Were the 2 prev vowels
|
||||||
|
prev2_consonant = False # Were the 2 prev consonants
|
||||||
|
prev_num = 0
|
||||||
|
|
||||||
|
# Generate letters for name
|
||||||
|
for i in range(0, name_length):
|
||||||
|
if i == 0:
|
||||||
|
a = alphabet[rand_int(0,25)]
|
||||||
|
my_name = my_name + a.upperchar
|
||||||
|
else:
|
||||||
|
a = get_letter(prev_num,prev2_vowel,prev2_consonant)
|
||||||
|
my_name = my_name + a.lowerchar
|
||||||
|
prev2_vowel = a.is_vowel and prev_vowel
|
||||||
|
prev2_consonant = a.is_consonant and prev_consonant
|
||||||
|
prev_vowel = a.is_vowel
|
||||||
|
prev_consonant = a.is_consonant
|
||||||
|
prev_num = a.num
|
||||||
|
my_name_nums.append(a.num)
|
||||||
|
return [my_name, my_name_nums]
|
||||||
|
|
||||||
|
def get_letter(prev_num,need_consonant,need_vowel):
|
||||||
|
global alphabet
|
||||||
|
# Generate a random letter
|
||||||
|
done = False
|
||||||
|
while not done:
|
||||||
|
a = pick_letter(prev_num)
|
||||||
|
if (need_consonant and a.is_vowel) or (need_vowel and a.is_consonant):
|
||||||
|
done = False
|
||||||
|
else:
|
||||||
|
done = True
|
||||||
|
return a
|
||||||
|
|
||||||
|
def pick_letter(i):
|
||||||
|
global prob
|
||||||
|
r = random()
|
||||||
|
total = 0
|
||||||
|
for j in range(0,len(alphabet)):
|
||||||
|
total += prob[i][j]
|
||||||
|
if r <= total or j == len(alphabet):
|
||||||
|
return alphabet[j]
|
||||||
|
print("problem!")
|
||||||
|
return alphabet(25)
|
||||||
|
|
||||||
|
# Generate and print a name
|
||||||
|
name1 = make_name()
|
||||||
|
print(name1[0])
|
||||||
|
|
||||||
|
# Quality assessment
|
||||||
|
input_string = "Was this a good "+race_name+" name ? y/n "
|
||||||
|
good = input(input_string)
|
||||||
|
if good == 'y':
|
||||||
|
for i in range(0,len(name1[1])-1):
|
||||||
|
prob[name1[1][i]][name1[1][i+1]] *= 1.01
|
||||||
|
if good == 'n':
|
||||||
|
for i in range(0,len(name1[1])-1):
|
||||||
|
prob[name1[1][i]][name1[1][i+1]] *= 0.99
|
||||||
|
|
||||||
|
prob = normalize(prob)
|
||||||
|
|
||||||
|
with open(file_name, 'w', newline='') as csvfile:
|
||||||
|
prob_writer = csv.writer(csvfile, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL)
|
||||||
|
for i in range(0, len(alphabet)):
|
||||||
|
prob_writer.writerow(prob[i])
|
26
nameprob.csv
Normal file
26
nameprob.csv
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
0.03486529318541998,0.007923930269413631,0.01267828843106181,0.01743264659270999,0.12202852614896992,0.006339144215530905,0.0047543581616481785,0.007923930269413631,0.02060221870047544,0.0031695721077654527,0.01267828843106181,0.1283676703645008,0.03486529318541998,0.16006339144215534,0.01267828843106181,0.0047543581616481785,0.0015847860538827263,0.2408874801901744,0.05546751188589542,0.05863708399366087,0.03328050713153725,0.014263074484944537,0.0,0.0015847860538827263,0.0015847860538827263,0.0015847860538827263
|
||||||
|
0.24324324324324326,0.02702702702702703,0.0,0.0,0.1891891891891892,0.0,0.0,0.05405405405405406,0.08108108108108109,0.0,0.0,0.02702702702702703,0.0,0.0,0.02702702702702703,0.0,0.0,0.24324324324324326,0.0,0.0,0.02702702702702703,0.0,0.0,0.0,0.08108108108108109,0.0
|
||||||
|
0.15384615384615385,0.0,0.02564102564102564,0.0,0.05128205128205128,0.0,0.0,0.41025641025641024,0.10256410256410256,0.0,0.0,0.05128205128205128,0.0,0.0,0.15384615384615385,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.05128205128205128,0.0
|
||||||
|
0.33884297520661155,0.0,0.0,0.04132231404958678,0.14049586776859505,0.0,0.0,0.01652892561983471,0.05785123966942149,0.0,0.0,0.0,0.0,0.0,0.0743801652892562,0.0,0.0,0.2066115702479339,0.0,0.0,0.049586776859504134,0.0,0.008264462809917356,0.0,0.06611570247933884,0.0
|
||||||
|
0.027491408934707903,0.0,0.0,0.024054982817869417,0.0,0.006872852233676976,0.006872852233676976,0.020618556701030927,0.037800687285223365,0.0,0.0,0.3127147766323024,0.013745704467353952,0.10996563573883161,0.010309278350515464,0.006872852233676976,0.0,0.23711340206185566,0.054982817869415807,0.058419243986254296,0.01718213058419244,0.044673539518900345,0.003436426116838488,0.0,0.006872852233676976,0.0
|
||||||
|
0.3243243243243243,0.0,0.0,0.0,0.08108108108108107,0.05405405405405404,0.0,0.05405405405405404,0.18918918918918914,0.0,0.0,0.13513513513513511,0.0,0.0,0.05405405405405404,0.0,0.0,0.02702702702702702,0.0,0.0,0.0,0.0,0.0,0.0,0.08108108108108107,0.0
|
||||||
|
0.4117647058823529,0.0,0.0,0.0,0.029411764705882353,0.0,0.0,0.029411764705882353,0.08823529411764706,0.0,0.0,0.17647058823529413,0.0,0.0,0.11764705882352941,0.0,0.0,0.058823529411764705,0.0,0.0,0.029411764705882353,0.0,0.0,0.0,0.058823529411764705,0.0
|
||||||
|
0.46060606060606063,0.0,0.0,0.0,0.07757575757575758,0.0,0.0048484848484848485,0.0,0.12242424242424244,0.0,0.0,0.024242424242424242,0.009696969696969697,0.0048484848484848485,0.13090909090909092,0.0,0.0,0.03393939393939394,0.0,0.014545454545454547,0.05818181818181819,0.009696969696969697,0.0,0.0,0.048484848484848485,0.0
|
||||||
|
0.06787330316742082,0.0037707390648567124,0.011312217194570137,0.022624434389140274,0.04524886877828055,0.0037707390648567124,0.007541478129713425,0.007541478129713425,0.038084464555052794,0.0,0.038084464555052794,0.21493212669683262,0.026395173453996987,0.17345399698340877,0.04524886877828055,0.0037707390648567124,0.0,0.07164404223227754,0.07541478129713425,0.07918552036199096,0.0037707390648567124,0.03393665158371041,0.0,0.0,0.026395173453996987,0.0
|
||||||
|
0.10714285714285714,0.0,0.0,0.0,0.0,0.0,0.0,0.10714285714285714,0.0,0.0,0.16071428571428573,0.16071428571428573,0.16071428571428573,0.17857142857142858,0.07142857142857142,0.0,0.0,0.017857142857142856,0.0,0.0,0.017857142857142856,0.0,0.0,0.0,0.017857142857142856,0.0
|
||||||
|
0.24528301886792453,0.0,0.0,0.0,0.11320754716981132,0.0,0.0,0.22641509433962265,0.07547169811320754,0.0,0.018867924528301886,0.05660377358490566,0.0,0.0,0.05660377358490566,0.0,0.0,0.05660377358490566,0.0,0.018867924528301886,0.05660377358490566,0.0,0.0,0.0,0.07547169811320754,0.0
|
||||||
|
0.3333333333333333,0.016666666666666666,0.006666666666666667,0.04666666666666667,0.06,0.0033333333333333335,0.01,0.013333333333333334,0.11333333333333333,0.0,0.0033333333333333335,0.08666666666666667,0.016666666666666666,0.013333333333333334,0.07666666666666666,0.02,0.0,0.013333333333333334,0.016666666666666666,0.03,0.043333333333333335,0.02666666666666667,0.0,0.0,0.05,0.0
|
||||||
|
0.28571428571428575,0.08333333333333334,0.0,0.0,0.08333333333333334,0.0,0.0,0.023809523809523815,0.130952380952381,0.0,0.011904761904761908,0.023809523809523815,0.03571428571428572,0.04761904761904763,0.08333333333333334,0.0,0.0,0.04761904761904763,0.023809523809523815,0.0,0.011904761904761908,0.0,0.0,0.0,0.10714285714285716,0.0
|
||||||
|
0.2844036697247707,0.0,0.013761467889908261,0.21100917431192667,0.055045871559633044,0.004587155963302753,0.018348623853211014,0.009174311926605507,0.06422018348623855,0.009174311926605507,0.0,0.018348623853211014,0.0,0.0688073394495413,0.04587155963302753,0.0,0.0,0.004587155963302753,0.022935779816513766,0.09174311926605506,0.009174311926605507,0.004587155963302753,0.0,0.0,0.06422018348623855,0.0
|
||||||
|
0.03571428571428572,0.0,0.010204081632653062,0.005102040816326531,0.025510204081632657,0.0,0.0,0.015306122448979593,0.005102040816326531,0.005102040816326531,0.005102040816326531,0.09183673469387757,0.025510204081632657,0.22448979591836737,0.010204081632653062,0.005102040816326531,0.0,0.326530612244898,0.09693877551020409,0.08673469387755103,0.015306122448979593,0.0,0.0,0.005102040816326531,0.0,0.005102040816326531
|
||||||
|
0.2222222222222222,0.0,0.0,0.0,0.08333333333333333,0.0,0.0,0.2777777777777778,0.08333333333333333,0.0,0.0,0.027777777777777776,0.0,0.0,0.027777777777777776,0.05555555555555555,0.0,0.027777777777777776,0.0,0.027777777777777776,0.05555555555555555,0.0,0.0,0.0,0.1111111111111111,0.0
|
||||||
|
0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.6,0.0,0.0,0.0,0.0,0.0
|
||||||
|
0.21629213483146073,0.005617977528089888,0.002808988764044944,0.03932584269662922,0.08146067415730339,0.005617977528089888,0.011235955056179777,0.028089887640449444,0.16011235955056183,0.0,0.008426966292134833,0.03370786516853933,0.014044943820224722,0.053370786516853945,0.09831460674157307,0.005617977528089888,0.0,0.03932584269662922,0.014044943820224722,0.04494382022471911,0.03370786516853933,0.0,0.002808988764044944,0.0,0.101123595505618,0.0
|
||||||
|
0.21052631578947367,0.0,0.03007518796992481,0.0,0.06015037593984962,0.0,0.0,0.13533834586466165,0.12781954887218044,0.0,0.045112781954887216,0.015037593984962405,0.0,0.0,0.03759398496240601,0.03759398496240601,0.0,0.022556390977443608,0.09022556390977443,0.11278195488721804,0.03007518796992481,0.0,0.0,0.007518796992481203,0.03759398496240601,0.0
|
||||||
|
0.23684210526315788,0.0,0.0,0.0,0.05263157894736842,0.0,0.0,0.5657894736842105,0.008771929824561403,0.0,0.0,0.008771929824561403,0.0,0.0,0.03070175438596491,0.0,0.0,0.05263157894736842,0.008771929824561403,0.021929824561403508,0.0,0.0,0.0,0.0,0.013157894736842105,0.0
|
||||||
|
0.058823529411764705,0.029411764705882353,0.0196078431372549,0.0196078431372549,0.0392156862745098,0.0196078431372549,0.0,0.00980392156862745,0.0784313725490196,0.0,0.0,0.08823529411764706,0.0392156862745098,0.10784313725490197,0.00980392156862745,0.00980392156862745,0.0,0.1568627450980392,0.0784313725490196,0.10784313725490197,0.00980392156862745,0.09803921568627451,0.0,0.0,0.0196078431372549,0.0
|
||||||
|
0.27142857142857146,0.0,0.0,0.0,0.28571428571428575,0.0,0.0,0.08571428571428573,0.10000000000000002,0.0,0.0,0.014285714285714287,0.0,0.0,0.1142857142857143,0.0,0.0,0.014285714285714287,0.0,0.0,0.0,0.042857142857142864,0.0,0.0,0.07142857142857144,0.0
|
||||||
|
0.16666666666666666,0.0,0.0,0.0,0.08333333333333333,0.0,0.0,0.0,0.08333333333333333,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.6666666666666666,0.0
|
||||||
|
0.375,0.0,0.0,0.0,0.0,0.125,0.0,0.375,0.125,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0
|
||||||
|
0.026845637583892617,0.0,0.006711409395973154,0.013422818791946308,0.006711409395973154,0.020134228187919462,0.0,0.006711409395973154,0.0,0.0,0.013422818791946308,0.1476510067114094,0.11409395973154363,0.2550335570469799,0.013422818791946308,0.0,0.006711409395973154,0.20134228187919462,0.040268456375838924,0.06040268456375839,0.020134228187919462,0.026845637583892617,0.006711409395973154,0.006711409395973154,0.006711409395973154,0.0
|
||||||
|
0.5454545454545454,0.0,0.0,0.0,0.18181818181818182,0.0,0.0,0.09090909090909091,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.09090909090909091,0.0,0.0,0.0,0.0,0.09090909090909091
|
|
574
names.csv
Normal file
574
names.csv
Normal file
@ -0,0 +1,574 @@
|
|||||||
|
Abadda
|
||||||
|
Adresin
|
||||||
|
Aermhar
|
||||||
|
Agis
|
||||||
|
Ajaar
|
||||||
|
Albondiel
|
||||||
|
Alosrin
|
||||||
|
Andaerean
|
||||||
|
Aolis
|
||||||
|
Aravilar
|
||||||
|
Argus
|
||||||
|
Arlen
|
||||||
|
Aubric
|
||||||
|
Aumanas
|
||||||
|
Baerithryn
|
||||||
|
Belstram
|
||||||
|
Bialaer
|
||||||
|
Cameron
|
||||||
|
Chozzaster
|
||||||
|
Cohnal
|
||||||
|
Corym
|
||||||
|
Dakath
|
||||||
|
Darfin
|
||||||
|
Abarat
|
||||||
|
Aduce
|
||||||
|
Aesar
|
||||||
|
Aglanthol
|
||||||
|
Akhelbhen
|
||||||
|
Alinar
|
||||||
|
Althidon
|
||||||
|
Andrathath
|
||||||
|
Aquilan
|
||||||
|
Arbane
|
||||||
|
Arkhun
|
||||||
|
Arun
|
||||||
|
Aubron
|
||||||
|
Aumrauth
|
||||||
|
Belanor
|
||||||
|
Beluar
|
||||||
|
Braern
|
||||||
|
Chaalmyth
|
||||||
|
Chylnoth
|
||||||
|
Conall
|
||||||
|
Cymbiir
|
||||||
|
Dannyd
|
||||||
|
Darthoridan
|
||||||
|
Adamar
|
||||||
|
Aelrindel
|
||||||
|
Aeson
|
||||||
|
Ainésilver
|
||||||
|
Akkar
|
||||||
|
Allain
|
||||||
|
Amrynn
|
||||||
|
Anfalen
|
||||||
|
Araevin
|
||||||
|
Ardreth
|
||||||
|
Arkiem
|
||||||
|
Ascal
|
||||||
|
Aulathar
|
||||||
|
Avourel
|
||||||
|
Beldroth
|
||||||
|
Bhyrindaar
|
||||||
|
Brindarry
|
||||||
|
Chathanglas
|
||||||
|
Cluhurach
|
||||||
|
Connak
|
||||||
|
Cystenn
|
||||||
|
Daratrine
|
||||||
|
Deldrach
|
||||||
|
Adorellan
|
||||||
|
Aerendyl
|
||||||
|
Afamrail
|
||||||
|
Aithlin
|
||||||
|
Alabyran
|
||||||
|
Alok
|
||||||
|
Anarallath
|
||||||
|
Anlyth
|
||||||
|
Arandron
|
||||||
|
Ardryll
|
||||||
|
Arl
|
||||||
|
Athtar
|
||||||
|
Aulauthar
|
||||||
|
Baerdelcoam
|
||||||
|
Bellas
|
||||||
|
Biafyndar
|
||||||
|
Buttorwyr
|
||||||
|
Cheyrth
|
||||||
|
Cluym
|
||||||
|
Cornaith
|
||||||
|
Dalyor
|
||||||
|
Darcassan
|
||||||
|
Delmuth
|
||||||
|
Delsaran
|
||||||
|
Droth
|
||||||
|
Dyffros
|
||||||
|
Edwyrd
|
||||||
|
Eilauver
|
||||||
|
Elanjar
|
||||||
|
Eldaernth
|
||||||
|
Elenshaer
|
||||||
|
Elion
|
||||||
|
Elorshin
|
||||||
|
Emmyth
|
||||||
|
Eriladar
|
||||||
|
Erolith
|
||||||
|
Ettrian
|
||||||
|
Faahresc
|
||||||
|
Falael
|
||||||
|
Fflar
|
||||||
|
Filvendor
|
||||||
|
Flinar
|
||||||
|
Gaelin
|
||||||
|
Ganamede
|
||||||
|
Giilvas
|
||||||
|
Goronyyv
|
||||||
|
Haemir
|
||||||
|
Haldreithen
|
||||||
|
Halueth
|
||||||
|
Hatharal
|
||||||
|
Hubyr
|
||||||
|
Ilbryn
|
||||||
|
Ilitharath
|
||||||
|
Ilrune
|
||||||
|
Dhoelath
|
||||||
|
Druindar
|
||||||
|
Earynspieir
|
||||||
|
Edyrm
|
||||||
|
Elaethan
|
||||||
|
Elashor
|
||||||
|
Eldar
|
||||||
|
Elephon
|
||||||
|
Elkhazel
|
||||||
|
Elpaerae
|
||||||
|
Entrydal
|
||||||
|
Erlan
|
||||||
|
Eschallus
|
||||||
|
Euchoé
|
||||||
|
Faelar
|
||||||
|
Faoraar
|
||||||
|
Fhaornik
|
||||||
|
Filverel
|
||||||
|
Foxfire
|
||||||
|
Galaeron
|
||||||
|
Gantar
|
||||||
|
Giullio
|
||||||
|
Grathgor
|
||||||
|
Haladavar
|
||||||
|
Halflar
|
||||||
|
Halueve
|
||||||
|
Hiflanyl
|
||||||
|
Iefyr
|
||||||
|
Illianaro
|
||||||
|
Illithor
|
||||||
|
Ilthuryn
|
||||||
|
Divisav
|
||||||
|
Durlan
|
||||||
|
Edansyr
|
||||||
|
Ehlark
|
||||||
|
Elaith
|
||||||
|
Elbauthin
|
||||||
|
Eldrin
|
||||||
|
Elhieardacil
|
||||||
|
Ellisar
|
||||||
|
Eltaor
|
||||||
|
Erendriel
|
||||||
|
Erlathan
|
||||||
|
Estelar
|
||||||
|
Evindal
|
||||||
|
Faelyn
|
||||||
|
Felaern
|
||||||
|
Fhociin
|
||||||
|
Finufaranell
|
||||||
|
Fylson
|
||||||
|
Galan
|
||||||
|
Garrik
|
||||||
|
Glarald
|
||||||
|
Haalaari
|
||||||
|
Halafarin
|
||||||
|
Halgondas
|
||||||
|
Haryk
|
||||||
|
Hoccar
|
||||||
|
Ievos
|
||||||
|
Ilimitar
|
||||||
|
Illitran
|
||||||
|
Ilyndrathyl
|
||||||
|
Drannor
|
||||||
|
Durothil
|
||||||
|
Edicûve
|
||||||
|
Ehrendil
|
||||||
|
Elandorr
|
||||||
|
Elbereth
|
||||||
|
Elénaril
|
||||||
|
Elidyr
|
||||||
|
Elorfindar
|
||||||
|
Eltargrim
|
||||||
|
Erglareo
|
||||||
|
Eroan
|
||||||
|
Ethlando
|
||||||
|
Eyrynnhv
|
||||||
|
Faeranduil
|
||||||
|
Fenian
|
||||||
|
Filarion
|
||||||
|
Flardryn
|
||||||
|
Gaeleath
|
||||||
|
Galather
|
||||||
|
Garynnon
|
||||||
|
Glorandal
|
||||||
|
Hachaam
|
||||||
|
Halamar
|
||||||
|
Halpaeril
|
||||||
|
Hastos
|
||||||
|
Horith
|
||||||
|
Ihimbraskar
|
||||||
|
Iliphar
|
||||||
|
Ilphas
|
||||||
|
Inchel
|
||||||
|
Inialos
|
||||||
|
Iolrath
|
||||||
|
Ivósaar
|
||||||
|
Iyriklaunavan
|
||||||
|
Jassin
|
||||||
|
Jharak
|
||||||
|
Jonik
|
||||||
|
Kahvoerm
|
||||||
|
Keletheryl
|
||||||
|
Keryth
|
||||||
|
Khatar
|
||||||
|
Khuumal
|
||||||
|
Kivessin
|
||||||
|
Korrigash
|
||||||
|
Kuskyn
|
||||||
|
Lafarallin
|
||||||
|
Larrel
|
||||||
|
Leayonadas
|
||||||
|
Lianthorn
|
||||||
|
Lorsan
|
||||||
|
Lyari
|
||||||
|
Maendellyn
|
||||||
|
Malgath
|
||||||
|
Melandrach
|
||||||
|
Injros
|
||||||
|
Itham
|
||||||
|
Ivran
|
||||||
|
Jandar
|
||||||
|
Jhaan
|
||||||
|
Jharym
|
||||||
|
Jorildyn
|
||||||
|
Kalaerede
|
||||||
|
Kelvhan
|
||||||
|
Kesefehon
|
||||||
|
Khidell
|
||||||
|
Khyrmn
|
||||||
|
Kiyuigh
|
||||||
|
Kroloth
|
||||||
|
Kymil
|
||||||
|
Lamruil
|
||||||
|
Lashul
|
||||||
|
Leojym
|
||||||
|
Llarm
|
||||||
|
Luirlan
|
||||||
|
Lyklor
|
||||||
|
Maeraddyth
|
||||||
|
Mardeiym
|
||||||
|
Melisander
|
||||||
|
Intevar
|
||||||
|
Ithraides
|
||||||
|
Iymbryl
|
||||||
|
Jannalor
|
||||||
|
Jhaartael
|
||||||
|
Jhuvik
|
||||||
|
Josidiah
|
||||||
|
Katar
|
||||||
|
Kendel
|
||||||
|
Khaalindaan
|
||||||
|
Khiiral
|
||||||
|
Khyssoun
|
||||||
|
Klaern
|
||||||
|
Kuornos
|
||||||
|
Kyrtaar
|
||||||
|
Laosx
|
||||||
|
Lathai
|
||||||
|
Lhombaerth
|
||||||
|
Llewellenar
|
||||||
|
Luthais
|
||||||
|
Lysanthir
|
||||||
|
Maeral
|
||||||
|
Marikoth
|
||||||
|
Merellien
|
||||||
|
Iolas
|
||||||
|
Ivlisar
|
||||||
|
Iyrandrar
|
||||||
|
Jaonos
|
||||||
|
Jhaeros
|
||||||
|
Jonas
|
||||||
|
Juppar
|
||||||
|
Katyr
|
||||||
|
Kerym
|
||||||
|
Kharis
|
||||||
|
Khilseith
|
||||||
|
Kindroth
|
||||||
|
Kolvar
|
||||||
|
Kuskyn
|
||||||
|
Laeroth
|
||||||
|
Larongar
|
||||||
|
Lathlaeril
|
||||||
|
Lhoris
|
||||||
|
Llombaerth
|
||||||
|
Luvon
|
||||||
|
Maasli
|
||||||
|
Maiele
|
||||||
|
Marlevaur
|
||||||
|
Merith
|
||||||
|
Methild
|
||||||
|
Miilaethorn
|
||||||
|
Mlartlar
|
||||||
|
Montagor
|
||||||
|
Mourn
|
||||||
|
Myronthilar
|
||||||
|
Naeryndam
|
||||||
|
Nelaeryn
|
||||||
|
Nesterin
|
||||||
|
Nindrol
|
||||||
|
Norlorn
|
||||||
|
Nylian
|
||||||
|
Oenel
|
||||||
|
Olithir
|
||||||
|
Ondroth
|
||||||
|
Orndacil
|
||||||
|
Orym
|
||||||
|
Othorion
|
||||||
|
Paulorin
|
||||||
|
Pirphal
|
||||||
|
Pyrravym
|
||||||
|
Quastarte
|
||||||
|
Ralikanthae
|
||||||
|
Rauthomyr
|
||||||
|
Rennyn
|
||||||
|
Rhalyf
|
||||||
|
Rhistel
|
||||||
|
Riluaneth
|
||||||
|
Ruardh
|
||||||
|
Mhaenal
|
||||||
|
Miirphys
|
||||||
|
Mlossae
|
||||||
|
Morgan
|
||||||
|
Myrddin
|
||||||
|
Mythanthar
|
||||||
|
Napraeleon
|
||||||
|
Nelaeryn
|
||||||
|
Nevarth
|
||||||
|
Ninthalor
|
||||||
|
Nremyn
|
||||||
|
Nym
|
||||||
|
Ohmbryn
|
||||||
|
Onas
|
||||||
|
Onvyr
|
||||||
|
Ornthalas
|
||||||
|
Oslarelar
|
||||||
|
Paeral
|
||||||
|
Phaendar
|
||||||
|
Pleufan
|
||||||
|
Pywaln
|
||||||
|
Quynn
|
||||||
|
Ralnor
|
||||||
|
Rauvelore
|
||||||
|
Reptar
|
||||||
|
Rhangyl
|
||||||
|
Rhothomir
|
||||||
|
Rolim
|
||||||
|
Ruehar
|
||||||
|
Mi’tilarro
|
||||||
|
Mirthal
|
||||||
|
Molonym
|
||||||
|
Morthil
|
||||||
|
Myriil
|
||||||
|
Naertho
|
||||||
|
Narbeth
|
||||||
|
Neldor
|
||||||
|
Nhamashal
|
||||||
|
Nlossae
|
||||||
|
Nuvian
|
||||||
|
Nyvorlas
|
||||||
|
Olaurae
|
||||||
|
Oncith
|
||||||
|
Orist
|
||||||
|
Ornthalas
|
||||||
|
Otaehryn
|
||||||
|
Paeris
|
||||||
|
Pharom
|
||||||
|
Purtham
|
||||||
|
"Pyxaanthal, "
|
||||||
|
Raeranthur
|
||||||
|
Rathal
|
||||||
|
Reluraun
|
||||||
|
Respen
|
||||||
|
Rhenalyrr
|
||||||
|
Rhys
|
||||||
|
Rotheloe
|
||||||
|
Ruith
|
||||||
|
Mihangyl
|
||||||
|
Mirthal
|
||||||
|
Molostroi
|
||||||
|
Mothrys
|
||||||
|
Myrin
|
||||||
|
Naeryndam
|
||||||
|
Nardual
|
||||||
|
Neldor
|
||||||
|
Nieven
|
||||||
|
Nopos
|
||||||
|
Nyaalsir
|
||||||
|
Oacenth
|
||||||
|
Olinsivver
|
||||||
|
Ondabrar
|
||||||
|
Orlpar
|
||||||
|
Ortauré
|
||||||
|
Otaerhyn
|
||||||
|
Passilorris
|
||||||
|
Phraan
|
||||||
|
Pyrder
|
||||||
|
Qildor
|
||||||
|
Raibyr
|
||||||
|
Raunaeril
|
||||||
|
Reluvethel
|
||||||
|
Rhaac'var
|
||||||
|
Rhespen
|
||||||
|
Rilitar
|
||||||
|
Rothilion
|
||||||
|
Rumathil
|
||||||
|
Ruvaen
|
||||||
|
Ryfon
|
||||||
|
Saevel
|
||||||
|
Seanchai
|
||||||
|
Shael
|
||||||
|
Shaundyl
|
||||||
|
Siirist
|
||||||
|
Skalanis
|
||||||
|
Sudryl
|
||||||
|
Sythaeryn
|
||||||
|
Taeral
|
||||||
|
Tamnaeuth
|
||||||
|
Tannyll
|
||||||
|
Tarathiel
|
||||||
|
Tasar
|
||||||
|
Teirist
|
||||||
|
Thallan
|
||||||
|
Thurruvyn
|
||||||
|
Tordynnar
|
||||||
|
Triandal
|
||||||
|
Tyvollus
|
||||||
|
Seiveril
|
||||||
|
Sudryl
|
||||||
|
Tamnaeuth
|
||||||
|
Tolthe
|
||||||
|
Uldreiyn
|
||||||
|
Uthorim
|
||||||
|
Vander
|
||||||
|
Vesperr
|
||||||
|
Vhoori
|
||||||
|
Waernas
|
||||||
|
Ruven
|
||||||
|
Ryul
|
||||||
|
Sakrattars
|
||||||
|
Seith
|
||||||
|
Shammath
|
||||||
|
Shevarash
|
||||||
|
Silvyr
|
||||||
|
Sontar
|
||||||
|
Sundamar
|
||||||
|
Taanyth
|
||||||
|
Taerntym
|
||||||
|
Tamsin
|
||||||
|
Tanseril
|
||||||
|
Taredd
|
||||||
|
Tassarion
|
||||||
|
Tenyajn
|
||||||
|
Thatoryl
|
||||||
|
Tiarshus
|
||||||
|
Toross
|
||||||
|
Triktappic
|
||||||
|
Saelethil
|
||||||
|
Sharian
|
||||||
|
Sythaeryn
|
||||||
|
Tanyl
|
||||||
|
Traeliorn
|
||||||
|
Uldreiyn
|
||||||
|
Vaalyun
|
||||||
|
Vartan
|
||||||
|
Vesryn
|
||||||
|
Vhoorhin
|
||||||
|
Wistari
|
||||||
|
Ruvyn
|
||||||
|
"Ryvvik, "
|
||||||
|
Samblar
|
||||||
|
Selanlar
|
||||||
|
Sharian
|
||||||
|
Shonassir
|
||||||
|
Simimar
|
||||||
|
Srindin
|
||||||
|
Sylvar
|
||||||
|
Taegen
|
||||||
|
Taleisin
|
||||||
|
Tanithil
|
||||||
|
Tanyl
|
||||||
|
Tarosspur
|
||||||
|
Tathaln
|
||||||
|
Tethir
|
||||||
|
Thiilthan
|
||||||
|
Tlannatar
|
||||||
|
Traeliorn
|
||||||
|
Tsaer
|
||||||
|
Saevel
|
||||||
|
Skalanis
|
||||||
|
Taenaran
|
||||||
|
Tarathiel
|
||||||
|
Ualair
|
||||||
|
Urddusk
|
||||||
|
Vaeril
|
||||||
|
Velethuil
|
||||||
|
Vesstan
|
||||||
|
Volodar
|
||||||
|
Wylchyr
|
||||||
|
Rychell
|
||||||
|
Sadalymn
|
||||||
|
Sandevv
|
||||||
|
Selgauth
|
||||||
|
Sharlario
|
||||||
|
Shyrrik
|
||||||
|
Sinaht
|
||||||
|
Strohm
|
||||||
|
Symkalr
|
||||||
|
Taeglyn
|
||||||
|
Tammson
|
||||||
|
Tannivh
|
||||||
|
Taranath
|
||||||
|
Tarron
|
||||||
|
Tehlmar
|
||||||
|
Thalanil
|
||||||
|
Thurdan
|
||||||
|
Tolthe
|
||||||
|
Travaran
|
||||||
|
Tsiilmas
|
||||||
|
Sakrattars
|
||||||
|
Sinaht
|
||||||
|
Tannivh
|
||||||
|
T’karon
|
||||||
|
Uevareth
|
||||||
|
Usunaar
|
||||||
|
Valmaxian
|
||||||
|
Venali
|
||||||
|
Vhoadan
|
||||||
|
Voron
|
||||||
|
Wylym
|
||||||
|
Wyn
|
||||||
|
Xalph
|
||||||
|
Xharlion
|
||||||
|
Ylyndar
|
||||||
|
Zandro
|
||||||
|
Zhoron
|
||||||
|
Wyndelleu
|
||||||
|
Xanotter
|
||||||
|
Yalathanil
|
||||||
|
Ynloeth
|
||||||
|
Zaor
|
||||||
|
Zulae
|
||||||
|
Wyqhael
|
||||||
|
Xhalh
|
||||||
|
Yeschant
|
||||||
|
Zabbas
|
||||||
|
Zaos
|
||||||
|
Wyrran
|
||||||
|
Xhalth
|
||||||
|
Yhendorn
|
||||||
|
Zaltarish
|
||||||
|
Zelphar
|
|
Reference in New Issue
Block a user