Module:number list/data/yo

This module contains data on various types of numbers in Yoruba.

Number Cardinal Counting Adjectival Ordinal Adverbial Distributive Collective Fractional
0 òdo òdo, oódo
1 ọ̀kan, ení oókan kan, méní kìíní, kìn-ín-ní ẹ̀ẹ̀kan ọ̀kọ̀ọ̀kan ọ̀kọ̀ọ̀kan
2 èjì eéjì méjì kejì ẹ̀ẹ̀mejì méjì méjì méjèèjì ìdajì
3 ẹ̀ta ẹẹ́ta mẹ́ta kẹta ẹ̀ẹ̀mẹta mẹ́ta mẹ́ta mẹ́tẹ̀ẹ̀ta ìdata
4 ẹ̀rin ẹẹ́rin mẹ́rin kẹrin ẹ̀ẹ̀mẹrin mẹ́rin mẹ́rin mẹ́rẹ̀ẹ̀rin ìdarin
5 àrún aárùn-ún márùn-ún karùn-ún ẹ̀ẹ̀marùn-ún márùn-ún márùn-ún márààrùn-ún ìdámárùn-ún
6 ẹ̀fà ẹẹ́fà mẹ́fà kẹfà ẹ̀ẹ̀mẹfà mẹ́fà mẹ́fà mẹ́fẹ̀ẹ̀fà ìdámẹ́fà
7 èje eéje méje keje ẹ̀ẹ̀meje méje méje méjèèje ìdáméje
8 ẹ̀jọ ẹẹ́jọ mẹ́jọ kẹjọ ẹ̀ẹ̀mẹjọ mẹ́jọ mẹ́jọ mẹ́jẹ̀ẹ̀jọ ìdámẹ́jọ
9 ẹ̀sán ẹẹ́sàn-án mẹ́sàn-án kẹsàn-án ẹ̀ẹ̀mẹsàn-án mẹ́sàn-án mẹ́sàn-án mẹ́sẹ̀ẹ̀sàn-án ìdámẹ́sàn-án
10 ẹ̀wá ẹẹ́wàá mẹ́wàá kẹwàá ẹ̀ẹ̀mẹwàá mẹ́wàá mẹ́wàá mẹ́wẹ̀ẹ̀wàá ìdámẹ́wàá
11 ọ̀kànlá oókànlá mọ́kànlá kọkànlá ẹ̀ẹ̀mọkànlá mọ́kànlá mọ́kànlá mọ́kọ̀ọ̀kànlá ìdámọ́kànlá
12 èjìlá eéjìlá méjìlá kejìlá ẹ̀ẹ̀mejìlá méjìlá méjìlá méjèèjìlá ìdáméjìlá
13 ẹ̀tàlá ẹẹ́tàlá mẹ́tàlá kẹtàlá ẹ̀ẹ̀mẹtàlá mẹ́tàlá mẹ́tàlá mẹ́tẹ̀ẹ̀tàlá ìdámẹ́tàlá
14 ẹ̀rìnlá ẹẹ́rìnlá mẹ́rìnlá kẹrìnlá ẹ̀ẹ̀mẹrìnlá mẹ́rìnlá mẹ́rìnlá mẹ́rẹ̀ẹ̀rìnlá ìdámẹ́rìnlá
15 àrúndínlógún, ẹ̀ẹ́dógún aárùn-úndínlógún, ẹ̀ẹ́dógún márùn-úndínlógún, mẹ́ẹ̀ẹ́dógún
16 ẹ̀rìndínlógún ẹẹ́rìndínlógún mẹ́rìndínlógún
17 ẹ̀tàdínlógún ẹẹ́tàdínlógún mẹ́tàdínlógún
18 èjìdínlógún eéjìdínlógún méjìdínlógún
19 ọ̀kàndínlógún oókàndínlógún mọ́kàndínlógún
20 ogún ogún ogún ogún ìgbà ogún ogoogún gbogbo ogún ìdá ogún
21 ọ̀kànlélógún oókànlélógún mọ́kànlélógún
22 èjìlélógún eéjìlélógún méjìlélógún
23 ẹ̀tàlélógún ẹẹ́tàlélógún mẹ́tàlélógún
24 ẹ̀rìnlélógún ẹẹ́rìnlélógún mẹ́rìnlélógún
25 àrúndínlọ́gbọ̀n aárùn-úndínlọ́gbọ̀n márùn-úndínlọ́gbọ̀n
26 ẹ̀rìndínlọ́gbọ̀n ẹẹ́rìndínlọ́gbọ̀n mẹ́rìndínlọ́gbọ̀n
27 ẹ̀tàdínlọ́gbọ̀n ẹẹ́tàdínlọ́gbọ̀n mẹ́tàdínlọ́gbọ̀n
28 èjìdínlọ́gbọ̀n eéjìdínlọ́gbọ̀n méjìdínlọ́gbọ̀n
29 ọ̀kàndínlọ́gbọ̀n oókàndínlọ́gbọ̀n mọ́kàndínlọ́gbọ̀n
30 ọgbọ̀n ọgbọ̀n ọgbọ̀n ọgbọ̀n ìgbà ọgbọ̀n ọgbọọgbọ̀n gbogbo ọgbọ̀n ìdá ọgbọ̀n
31 ọ̀kànlélọ́gbọ̀n oókànlélọ́gbọ̀n mọ́kànlélọ́gbọ̀n
32 èjìlélọ́gbọ̀n eéjìlélọ́gbọ̀n méjìlélọ́gbọ̀n
33 ẹ̀tàlélọ́gbọ̀n ẹẹ́tàlélọ́gbọ̀n mẹ́tàlélọ́gbọ̀n
34 ẹ̀rìnlélọ́gbọ̀n ẹẹ́rìnlélọ́gbọ̀n mẹ́rìnlélọ́gbọ̀n
35 àrúndínlógójì aárùn-úndínlógójì márùn-úndínlógójì
36 ẹ̀rìndínlógójì ẹẹ́rìndínlógójì mẹ́rìndínlógójì
37 ẹ̀tàdínlógójì ẹẹ́tàdínlógójì mẹ́tàdínlógójì
38 èjìdínlógójì eéjìdínlógójì méjìdínlógójì
39 ọ̀kàndínlógójì oókàndínlógójì mọ́kàndínlógójì
40 ogójì ogójì ogójì ogójì ìgbà ogójì ogójì ogójì
41 ọ̀kànlélógójì oókànlélógójì mọ́kànlélógójì
42 èjìlélógójì eéjìlélógójì méjìlélógójì
43 ẹ̀tàlélógójì ẹẹ́tàlélógójì mẹ́tàlélógójì
44 ẹ̀rìnlélógójì ẹẹ́rìnlélógójì mẹ́rìnlélógójì
45 àrúndínláàádọ́ta aárùn-úndínláàádọ́ta márùn-úndínláàádọ́ta
46 ẹ̀rìndínláàádọ́ta ẹẹ́rìndínláàádọ́ta mẹ́rìndínláàádọ́ta
47 ẹ̀tàdínláàádọ́ta ẹẹ́tàdínláàádọ́ta mẹ́tàdínláàádọ́ta
48 èjìdínláàádọ́ta eéjìdínláàádọ́ta méjìdínláàádọ́ta
49 ọ̀kàndínláàádọ́ta oókàndínláàádọ́ta mọ́kàndínláàádọ́ta
50 àádọ́ta àádọ́ta àádọ́ta àádọ́ta ìgbà àádọ́ta àádọ́ta àádọ́ta
51 ọ̀kànléláàádọ́ta oókànléláàádọ́ta mọ́kànléláàádọ́ta
52 èjìléláàádọ́ta eéjìléláàádọ́ta méjìléláàádọ́ta
53 ẹ̀tàléláàádọ́ta ẹẹ́tàléláàádọ́ta mẹ́tàléláàádọ́ta
54 ẹ̀rìnléláàádọ́ta ẹẹ́rìnléláàádọ́ta mẹ́rìnléláàádọ́ta
55 àrúndínlọ́gọ́ta aárùn-úndínlọ́gọ́ta márùn-úndínlọ́gọ́ta
56 ẹ̀rìndínlọ́gọ́ta ẹẹ́rìndínlọ́gọ́ta mẹ́rìndínlọ́gọ́ta
57 ẹ̀tàdínlọ́gọ́ta ẹẹ́tàdínlọ́gọ́ta mẹ́tàdínlọ́gọ́ta
58 èjìdínlọ́gọ́ta eéjìdínlọ́gọ́ta méjìdínlọ́gọ́ta
59 ọ̀kàndínlọ́gọ́ta oókàndínlọ́gọ́ta mọ́kàndínlọ́gọ́ta
60 ọgọ́ta ọgọ́ta ọgọ́ta ọgọ́ta ìgbà ọgọ́ta ọgọ́ta ọgọ́ta
61 ọ̀kànlélọ́gọ́ta oókànlélọ́gọ́ta mọ́kànlélọ́gọ́ta
62 èjìlélọ́gọ́ta eéjìlélọ́gọ́ta méjìlélọ́gọ́ta
63 ẹ̀tàlélọ́gọ́ta ẹẹ́tàlélọ́gọ́ta mẹ́tàlélọ́gọ́ta
64 ẹ̀rìnlélọ́gọ́ta ẹẹ́rìnlélọ́gọ́ta mẹ́rìnlélọ́gọ́ta
65 àrúndínláàádọ́rin aárùn-úndínláàádọ́rin márùn-úndínláàádọ́rin
66 ẹ̀rìndínláàádọ́rin ẹẹ́rìndínláàádọ́rin mẹ́rìndínláàádọ́rin
67 ẹ̀tàdínláàádọ́rin ẹẹ́tàdínláàádọ́rin mẹ́tàdínláàádọ́rin
68 èjìdínláàádọ́rin eéjìdínláàádọ́rin méjìdínláàádọ́rin
69 ọ̀kàndínláàádọ́rin oókàndínláàádọ́rin mọ́kàndínláàádọ́rin
70 àádọ́rin àádọ́rin àádọ́rin àádọ́rin ìgbà àádọ́rin àádọ́rin àádọ́rin
71 ọ̀kànléláàádọ́rin oókànléláàádọ́rin mọ́kànléláàádọ́rin
72 èjìléláàádọ́rin eéjìléláàádọ́rin méjìléláàádọ́rin
73 ẹ̀tàléláàádọ́rin ẹẹ́tàléláàádọ́rin mẹ́tàléláàádọ́rin
74 ẹ̀rìnléláàádọ́rin ẹẹ́rìnléláàádọ́rin mẹ́rìnléláàádọ́rin
75 àrúndínlọ́gọ́rin aárùn-úndínlọ́gọ́rin márùn-úndínlọ́gọ́rin
76 ẹ̀rìndínlọ́gọ́rin ẹẹ́rìndínlọ́gọ́rin mẹ́rìndínlọ́gọ́rin
77 ẹ̀tàdínlọ́gọ́rin ẹẹ́tàdínlọ́gọ́rin mẹ́tàdínlọ́gọ́rin
78 èjìdínlọ́gọ́rin eéjìdínlọ́gọ́rin méjìdínlọ́gọ́rin
79 ọ̀kàndínlọ́gọ́rin oókàndínlọ́gọ́rin mọ́kàndínlọ́gọ́rin
80 ọgọ́rin ọgọ́rin ọgọ́rin ọgọ́rin ìgbà ọgọ́rin ọgọ́rin ọgọ́rin
81 ọ̀kànlélọ́gọ́rin oókànlélọ́gọ́rin mọ́kànlélọ́gọ́rin
82 èjìlélọ́gọ́rin eéjìlélọ́gọ́rin méjìlélọ́gọ́rin
83 ẹ̀tàlélọ́gọ́rin ẹẹ́tàlélọ́gọ́rin mẹ́tàlélọ́gọ́rin
84 ẹ̀rìnlélọ́gọ́rin ẹẹ́rìnlélọ́gọ́rin mẹ́rìnlélọ́gọ́rin
85 àrúndínláàádọ́rùn-ún aárùn-úndínláàádọ́rùn-ún márùn-úndínláàádọ́rùn-ún
86 ẹ̀rìndínláàádọ́rùn-ún ẹẹ́rìndínláàádọ́rùn-ún mẹ́rìndínláàádọ́rùn-ún
87 ẹ̀tàdínláàádọ́rùn-ún ẹẹ́tàdínláàádọ́rùn-ún mẹ́tàdínláàádọ́rùn-ún
88 èjìdínláàádọ́rùn-ún eéjìdínláàádọ́rùn-ún méjìdínláàádọ́rùn-ún
89 ọ̀kàndínláàádọ́rùn-ún oókàndínláàádọ́rùn-ún mọ́kàndínláàádọ́rùn-ún
90 àádọ́rùn-ún àádọ́rùn-ún àádọ́rùn-ún àádọ́rùn-ún ìgbà àádọ́rùn-ún àádọ́rùn-ún àádọ́rùn-ún
91 ọ̀kànléláàádọ́rùn-ún oókànléláàádọ́rùn-ún mọ́kànléláàádọ́rùn-ún
92 èjìléláàádọ́rùn-ún eéjìléláàádọ́rùn-ún méjìléláàádọ́rùn-ún
93 ẹ̀tàléláàádọ́rùn-ún ẹẹ́tàléláàádọ́rùn-ún mẹ́tàléláàádọ́rùn-ún
94 ẹ̀rìnléláàádọ́rùn-ún ẹẹ́rìnléláàádọ́rùn-ún mẹ́rìnléláàádọ́rùn-ún
95 àrúndínlọ́gọ́rùn-ún aárùn-úndínlọ́gọ́rùn-ún márùn-úndínlọ́gọ́rùn-ún
96 ẹ̀rìndínlọ́gọ́rùn-ún ẹẹ́rìndínlọ́gọ́rùn-ún mẹ́rìndínlọ́gọ́rùn-ún
97 ẹ̀tàdínlọ́gọ́rùn-ún ẹẹ́tàdínlọ́gọ́rùn-ún mẹ́tàdínlọ́gọ́rùn-ún
98 èjìdínlọ́gọ́rùn-ún eéjìdínlọ́gọ́rùn-ún méjìdínlọ́gọ́rùn-ún
99 ọ̀kàndínlọ́gọ́rùn-ún oókàndínlọ́gọ́rùn-ún mọ́kàndínlọ́gọ́rùn-ún
100 ọgọ́rùn-ún ọgọ́rùn-ún ọgọ́rùn-ún ọgọ́rùn-ún ìgbà ọgọ́rùn-ún ọgọ́rùn-ún ọgọ́rùn-ún
101 ọ̀kànlélọ́gọ́rùn-ún oókànlélọ́gọ́rùn-ún mọ́kànlélọ́gọ́rùn-ún
102 èjìlélọ́gọ́rùn-ún eéjìlélọ́gọ́rùn-ún méjìlélọ́gọ́rùn-ún
103 ẹ̀tàlélọ́gọ́rùn-ún ẹẹ́tàlélọ́gọ́rùn-ún mẹ́tàlélọ́gọ́rùn-ún
104 ẹ̀rìnlélọ́gọ́rùn-ún ẹẹ́rìnlélọ́gọ́rùn-ún mẹ́rìnlélọ́gọ́rùn-ún
105 àrúndínláàádọ́fà aárùn-úndínláàádọ́fà márùn-úndínláàádọ́fà
106 ẹ̀rìndínláàádọ́fà ẹẹ́rìndínláàádọ́fà mẹ́rìndínláàádọ́fà
107 ẹ̀tàdínláàádọ́fà ẹẹ́tàdínláàádọ́fà mẹ́tàdínláàádọ́fà
108 èjìdínláàádọ́fà eéjìdínláàádọ́fà méjìdínláàádọ́fà
109 ọ̀kàndínláàádọ́fà oókàndínláàádọ́fà mọ́kàndínláàádọ́fà
110 àádọ́fà àádọ́fà àádọ́fà àádọ́fà ìgbà àádọ́fà àádọ́fà àádọ́fà
111 ọ̀kànléláàádọ́fà oókànléláàádọ́fà mọ́kànléláàádọ́fà
112 èjìléláàádọ́fà eéjìléláàádọ́fà méjìléláàádọ́fà
113 ẹ̀tàléláàádọ́fà ẹẹ́tàléláàádọ́fà mẹ́tàléláàádọ́fà
114 ẹ̀rìnléláàádọ́fà ẹẹ́rìnléláàádọ́fà mẹ́rìnléláàádọ́fà
115 àrúndínlọ́gọ́fà aárùn-úndínlọ́gọ́fà márùn-úndínlọ́gọ́fà
116 ẹ̀rìndínlọ́gọ́fà ẹẹ́rìndínlọ́gọ́fà mẹ́rìndínlọ́gọ́fà
117 ẹ̀tàdínlọ́gọ́fà ẹẹ́tàdínlọ́gọ́fà mẹ́tàdínlọ́gọ́fà
118 èjìdínlọ́gọ́fà eéjìdínlọ́gọ́fà méjìdínlọ́gọ́fà
119 ọ̀kàndínlọ́gọ́fà oókàndínlọ́gọ́fà mọ́kàndínlọ́gọ́fà
120 ọgọ́fà ọgọ́fà ọgọ́fà ọgọ́fà ìgbà ọgọ́fà ọgọ́fà ọgọ́fà
121 ọ̀kànlélọ́gọ́fà oókànlélọ́gọ́fà mọ́kànlélọ́gọ́fà
122 èjìlélọ́gọ́fà eéjìlélọ́gọ́fà méjìlélọ́gọ́fà
123 ẹ̀tàlélọ́gọ́fà ẹẹ́tàlélọ́gọ́fà mẹ́tàlélọ́gọ́fà
124 ẹ̀rìnlélọ́gọ́fà ẹẹ́rìnlélọ́gọ́fà mẹ́rìnlélọ́gọ́fà
125 àrúndínláàádóje aárùn-úndínláàádóje márùn-úndínláàádóje
126 ẹ̀rìndínláàádóje ẹẹ́rìndínláàádóje mẹ́rìndínláàádóje
127 ẹ̀tàdínláàádóje ẹẹ́tàdínláàádóje mẹ́tàdínláàádóje
128 èjìdínláàádóje eéjìdínláàádóje méjìdínláàádóje
129 ọ̀kàndínláàádóje oókàndínláàádóje mọ́kàndínláàádóje
130 àádóje àádóje àádóje àádóje ìgbà àádóje àádóje àádóje
131 ọ̀kànléláàádóje oókànléláàádóje mọ́kànléláàádóje
132 èjìléláàádóje eéjìléláàádóje méjìléláàádóje
133 ẹ̀tàléláàádóje ẹẹ́tàléláàádóje mẹ́tàléláàádóje
134 ẹ̀rìnléláàádóje ẹẹ́rìnléláàádóje mẹ́rìnléláàádóje
135 àrúndínlógóje aárùn-úndínlógóje márùn-úndínlógóje
136 ẹ̀rìndínlógóje ẹẹ́rìndínlógóje mẹ́rìndínlógóje
137 ẹ̀tàdínlógóje ẹẹ́tàdínlógóje mẹ́tàdínlógóje
138 èjìdínlógóje eéjìdínlógóje méjìdínlógóje
139 ọ̀kàndínlógóje oókàndínlógóje mọ́kàndínlógóje
140 ogóje ogóje ogóje ogóje ìgbà ogóje ogóje ogóje
141 ọ̀kànlélógóje oókànlélógóje mọ́kànlélógóje
142 èjìlélógóje eéjìlélógóje méjìlélógóje
143 ẹ̀tàlélógóje ẹẹ́tàlélógóje mẹ́tàlélógóje
144 ẹ̀rìnlélógóje ẹẹ́rìnlélógóje mẹ́rìnlélógóje
145 àrúndínláàádọ́jọ aárùn-úndínláàádọ́jọ márùn-úndínláàádọ́jọ
146 ẹ̀rìndínláàádọ́jọ ẹẹ́rìndínláàádọ́jọ mẹ́rìndínláàádọ́jọ
147 ẹ̀tàdínláàádọ́jọ ẹẹ́tàdínláàádọ́jọ mẹ́tàdínláàádọ́jọ
148 èjìdínláàádọ́jọ eéjìdínláàádọ́jọ méjìdínláàádọ́jọ
149 ọ̀kàndínláàádọ́jọ oókàndínláàádọ́jọ mọ́kàndínláàádọ́jọ
150 àádọ́jọ àádọ́jọ àádọ́jọ àádọ́jọ ìgbà àádọ́jọ àádọ́jọ àádọ́jọ
151 ọ̀kànléláàádọ́jọ oókànléláàádọ́jọ mọ́kànléláàádọ́jọ
152 èjìléláàádọ́jọ eéjìléláàádọ́jọ méjìléláàádọ́jọ
153 ẹ̀tàléláàádọ́jọ ẹẹ́tàléláàádọ́jọ mẹ́tàléláàádọ́jọ
154 ẹ̀rìnléláàádọ́jọ ẹẹ́rìnléláàádọ́jọ mẹ́rìnléláàádọ́jọ
155 àrúndínlọ́gọ́jọ aárùn-úndínlọ́gọ́jọ márùn-úndínlọ́gọ́jọ
156 ẹ̀rìndínlọ́gọ́jọ ẹẹ́rìndínlọ́gọ́jọ mẹ́rìndínlọ́gọ́jọ
157 ẹ̀tàdínlọ́gọ́jọ ẹẹ́tàdínlọ́gọ́jọ mẹ́tàdínlọ́gọ́jọ
158 èjìdínlọ́gọ́jọ eéjìdínlọ́gọ́jọ méjìdínlọ́gọ́jọ
159 ọ̀kàndínlọ́gọ́jọ oókàndínlọ́gọ́jọ mọ́kàndínlọ́gọ́jọ
160 ọgọ́jọ ọgọ́jọ ọgọ́jọ ọgọ́jọ ìgbà ọgọ́jọ ọgọ́jọ ọgọ́jọ
161 ọ̀kànlélọ́gọ́jọ oókànlélọ́gọ́jọ mọ́kànlélọ́gọ́jọ
162 èjìlélọ́gọ́jọ eéjìlélọ́gọ́jọ méjìlélọ́gọ́jọ
163 ẹ̀tàlélọ́gọ́jọ ẹẹ́tàlélọ́gọ́jọ mẹ́tàlélọ́gọ́jọ
164 ẹ̀rìnlélọ́gọ́jọ ẹẹ́rìnlélọ́gọ́jọ mẹ́rìnlélọ́gọ́jọ
165 àrúndínláàádọ́sàn-án aárùn-úndínláàádọ́sàn-án márùn-úndínláàádọ́sàn-án
166 ẹ̀rìndínláàádọ́sàn-án ẹẹ́rìndínláàádọ́sàn-án mẹ́rìndínláàádọ́sàn-án
167 ẹ̀tàdínláàádọ́sàn-án ẹẹ́tàdínláàádọ́sàn-án mẹ́tàdínláàádọ́sàn-án
168 èjìdínláàádọ́sàn-án eéjìdínláàádọ́sàn-án méjìdínláàádọ́sàn-án
169 ọ̀kàndínláàádọ́sàn-án oókàndínláàádọ́sàn-án mọ́kàndínláàádọ́sàn-án
170 àádọ́sàn-án àádọ́sàn-án àádọ́sàn-án àádọ́sàn-án ìgbà àádọ́sàn-án àádọ́sàn-án àádọ́sàn-án
171 ọ̀kànléláàádọ́sàn-án oókànléláàádọ́sàn-án mọ́kànléláàádọ́sàn-án
172 èjìléláàádọ́sàn-án eéjìléláàádọ́sàn-án méjìléláàádọ́sàn-án
173 ẹ̀tàléláàádọ́sàn-án ẹẹ́tàléláàádọ́sàn-án mẹ́tàléláàádọ́sàn-án
174 ẹ̀rìnléláàádọ́sàn-án ẹẹ́rìnléláàádọ́sàn-án mẹ́rìnléláàádọ́sàn-án
175 àrúndínlọ́gọ́sàn-án aárùn-úndínlọ́gọ́sàn-án márùn-úndínlọ́gọ́sàn-án
176 ẹ̀rìndínlọ́gọ́sàn-án ẹẹ́rìndínlọ́gọ́sàn-án mẹ́rìndínlọ́gọ́sàn-án
177 ẹ̀tàdínlọ́gọ́sàn-án ẹẹ́tàdínlọ́gọ́sàn-án mẹ́tàdínlọ́gọ́sàn-án
178 èjìdínlọ́gọ́sàn-án eéjìdínlọ́gọ́sàn-án méjìdínlọ́gọ́sàn-án
179 ọ̀kàndínlọ́gọ́sàn-án oókàndínlọ́gọ́sàn-án mọ́kàndínlọ́gọ́sàn-án
180 ọgọ́sàn-án ọgọ́sàn-án ọgọ́sàn-án ọgọ́sàn-án ìgbà ọgọ́sàn-án ọgọ́sàn-án ọgọ́sàn-án
181 ọ̀kànlélọ́gọ́sàn-án oókànlélọ́gọ́sàn-án mọ́kànlélọ́gọ́sàn-án
182 èjìlélọ́gọ́sàn-án eéjìlélọ́gọ́sàn-án méjìlélọ́gọ́sàn-án
183 ẹ̀tàlélọ́gọ́sàn-án ẹẹ́tàlélọ́gọ́sàn-án mẹ́tàlélọ́gọ́sàn-án
184 ẹ̀rìnlélọ́gọ́sàn-án ẹẹ́rìnlélọ́gọ́sàn-án mẹ́rìnlélọ́gọ́sàn-án
185 àrúndínláàádọ́wàá aárùn-úndínláàádọ́wàá márùn-úndínláàádọ́wàá
186 ẹ̀rìndínláàádọ́wàá ẹẹ́rìndínláàádọ́wàá mẹ́rìndínláàádọ́wàá
187 ẹ̀tàdínláàádọ́wàá ẹẹ́tàdínláàádọ́wàá mẹ́tàdínláàádọ́wàá
188 èjìdínláàádọ́wàá eéjìdínláàádọ́wàá méjìdínláàádọ́wàá
189 ọ̀kàndínláàádọ́wàá oókàndínláàádọ́wàá mọ́kàndínláàádọ́wàá
190 àádọ́wàá àádọ́wàá àádọ́wàá àádọ́wàá ìgbà àádọ́wàá àádọ́wàá àádọ́wàá
191 ọ̀kànléláàádọ́wàá oókànléláàádọ́wàá mọ́kànléláàádọ́wàá
192 èjìléláàádọ́wàá eéjìléláàádọ́wàá méjìléláàádọ́wàá
193 ẹ̀tàléláàádọ́wàá ẹẹ́tàléláàádọ́wàá mẹ́tàléláàádọ́wàá
194 ẹ̀rìnléláàádọ́wàá ẹẹ́rìnléláàádọ́wàá mẹ́rìnléláàádọ́wàá
195 àrúndínnígba aárùn-úndínnígba márùn-úndínnígba
196 ẹ̀rìndínnígba ẹẹ́rìndínnígba mẹ́rìndínnígba
197 ẹ̀tàdínnígba ẹẹ́tàdínnígba mẹ́tàdínnígba
198 èjìdínnígba eéjìdínnígba méjìdínnígba
199 ọ̀kàndínnígba oókàndínnígba mọ́kàndínnígba
200 igba igba igba igba ìgbà igba igba igba
300 ọ̀ọ́dúnrún ọ̀ọ́dúnrún ọ̀ọ́dúnrún ọ̀ọ́dúnrún ìgbà ọ̀ọ́dúnrún ọ̀ọ́dúnrún ọ̀ọ́dúnrún
400 irinwó irinwó irinwó irinwó ìgbà irinwó irinwó irinwó
500 ẹ̀ẹ́dẹ́gbẹ̀ta ẹ̀ẹ́dẹ́gbẹ̀ta ẹ̀ẹ́dẹ́gbẹ̀ta ẹ̀ẹ́dẹ́gbẹ̀ta
600 ẹgbẹ̀ta ẹgbẹ̀ta ẹgbẹ̀ta ẹgbẹ̀ta
700 ẹ̀ẹ́dẹ́gbẹ̀rin ẹ̀ẹ́dẹ́gbẹ̀rin ẹ̀ẹ́dẹ́gbẹ̀rin ẹ̀ẹ́dẹ́gbẹ̀rin
800 ẹgbẹ̀rin ẹgbẹ̀rin ẹgbẹ̀rin ẹgbẹ̀rin
900 ẹ̀ẹ́dẹ́gbẹ̀rún ẹ̀ẹ́dẹ́gbẹ̀rún ẹ̀ẹ́dẹ́gbẹ̀rún ẹ̀ẹ́dẹ́gbẹ̀rún
1,000 ẹgbẹ̀rún ẹgbẹ̀rún ẹgbẹ̀rún ẹgbẹ̀rún
1,100 ẹ̀ẹ́dẹ́gbẹ̀fà ẹ̀ẹ́dẹ́gbẹ̀fà ẹ̀ẹ́dẹ́gbẹ̀fà ẹ̀ẹ́dẹ́gbẹ̀fà
1,200 ẹgbẹ̀fà ẹgbẹ̀fà ẹgbẹ̀fà ẹgbẹ̀fà
1,300 èédégbèje èédégbèje èédégbèje èédégbèje
1,400 egbèje egbèje egbèje egbèje
1,500 ẹ̀ẹ́dẹ́gbẹ̀jọ ẹ̀ẹ́dẹ́gbẹ̀jọ ẹ̀ẹ́dẹ́gbẹ̀jọ ẹ̀ẹ́dẹ́gbẹ̀jọ
1,600 ẹgbẹ̀jọ ẹgbẹ̀jọ ẹgbẹ̀jọ ẹgbẹ̀jọ
1,700 ẹ̀ẹ́dẹ́gbẹ̀sán ẹ̀ẹ́dẹ́gbẹ̀sán ẹ̀ẹ́dẹ́gbẹ̀sán ẹ̀ẹ́dẹ́gbẹ̀sán
1,800 ẹgbẹ̀sán ẹgbẹ̀sán ẹgbẹ̀sán ẹgbẹ̀sán
1,900 ẹ̀ẹ́dẹ́gbẹ̀wàá ẹ̀ẹ́dẹ́gbẹ̀wàá ẹ̀ẹ́dẹ́gbẹ̀wàá ẹ̀ẹ́dẹ́gbẹ̀wàá
2,000 ẹgbàá, ẹgbẹ̀wàá ẹgbàá, ẹgbẹ̀wàá ẹgbàá, ẹgbẹ̀wàá ẹgbàá, ẹgbẹ̀wàá
2,100 ẹ̀ẹ́dẹ́gbọ̀kànlá ẹ̀ẹ́dẹ́gbọ̀kànlá ẹ̀ẹ́dẹ́gbọ̀kànlá ẹ̀ẹ́dẹ́gbọ̀kànlá
2,200 ẹgbọ̀kànlá ẹgbọ̀kànlá ẹgbọ̀kànlá ẹgbọ̀kànlá
2,300 èédégbèjìlá èédégbèjìlá èédégbèjìlá èédégbèjìlá
2,400 egbèjìlá egbèjìlá egbèjìlá egbèjìlá
2,500 ẹ̀ẹ́dẹ́gbẹ̀tàlá ẹ̀ẹ́dẹ́gbẹ̀tàlá ẹ̀ẹ́dẹ́gbẹ̀tàlá ẹ̀ẹ́dẹ́gbẹ̀tàlá
2,600 ẹgbẹ̀tàlá ẹgbẹ̀tàlá ẹgbẹ̀tàlá ẹgbẹ̀tàlá
2,700 ẹ̀ẹ́dẹ́gbẹ̀rìnlá ẹ̀ẹ́dẹ́gbẹ̀rìnlá ẹ̀ẹ́dẹ́gbẹ̀rìnlá ẹ̀ẹ́dẹ́gbẹ̀rìnlá
2,800 ẹgbẹ̀rìnlá ẹgbẹ̀rìnlá ẹgbẹ̀rìnlá ẹgbẹ̀rìnlá
2,900 ẹ̀ẹ́dẹ́gbẹ̀ẹ́dógún ẹ̀ẹ́dẹ́gbẹ̀ẹ́dógún ẹ̀ẹ́dẹ́gbẹ̀ẹ́dógún ẹ̀ẹ́dẹ́gbẹ̀ẹ́dógún
3,000 ẹ̀ẹ́dẹ́gbàajì, ẹgbẹ̀ẹ́dógún ẹ̀ẹ́dẹ́gbàajì, ẹgbẹ̀ẹ́dógún ẹ̀ẹ́dẹ́gbàajì, ẹgbẹ̀ẹ́dógún ẹ̀ẹ́dẹ́gbàajì, ẹgbẹ̀ẹ́dógún
3,100 ẹ̀ẹ́dẹ́gbẹ̀rìndínlógún ẹ̀ẹ́dẹ́gbẹ̀rìndínlógún ẹ̀ẹ́dẹ́gbẹ̀rìndínlógún ẹ̀ẹ́dẹ́gbẹ̀rìndínlógún
3,200 ẹgbẹ̀rìndínlógún ẹgbẹ̀rìndínlógún ẹgbẹ̀rìndínlógún ẹgbẹ̀rìndínlógún
3,300 ẹ̀ẹ́dẹ́gbẹ̀tàdínlógún ẹ̀ẹ́dẹ́gbẹ̀tàdínlógún ẹ̀ẹ́dẹ́gbẹ̀tàdínlógún ẹ̀ẹ́dẹ́gbẹ̀tàdínlógún
3,400 ẹgbẹ̀tàdínlógún ẹgbẹ̀tàdínlógún ẹgbẹ̀tàdínlógún ẹgbẹ̀tàdínlógún
3,500 èédégbèjìdínlógún èédégbèjìdínlógún èédégbèjìdínlógún èédégbèjìdínlógún
3,600 egbèjìdínlógún egbèjìdínlógún egbèjìdínlógún egbèjìdínlógún
3,700 ẹ̀ẹ́dẹ́gbọ̀kàndínlógún ẹ̀ẹ́dẹ́gbọ̀kàndínlógún ẹ̀ẹ́dẹ́gbọ̀kàndínlógún ẹ̀ẹ́dẹ́gbọ̀kàndínlógún
3,800 ẹgbọ̀kàndínlógún ẹgbọ̀kàndínlógún ẹgbọ̀kàndínlógún ẹgbọ̀kàndínlógún
4,000 ẹgbàajì ẹgbàajì ẹgbàajì ẹgbàajì
5,000 ẹ̀ẹ́dẹ́gbàata, ẹgbẹ̀ẹ́dọ́gbọ̀n ẹ̀ẹ́dẹ́gbàata, ẹgbẹ̀ẹ́dọ́gbọ̀n ẹ̀ẹ́dẹ́gbàata, ẹgbẹ̀ẹ́dọ́gbọ̀n ẹ̀ẹ́dẹ́gbàata, ẹgbẹ̀ẹ́dọ́gbọ̀n
6,000 ẹgbàata ẹgbàata ẹgbàata ẹgbàata
7,000 ẹ̀ẹ́dẹ́gbàarin ẹ̀ẹ́dẹ́gbàarin ẹ̀ẹ́dẹ́gbàarin ẹ̀ẹ́dẹ́gbàarin
8,000 ẹgbàarin ẹgbàarin ẹgbàarin ẹgbàarin
9,000 ẹ̀ẹ́dẹ́gbàarùn-ún ẹ̀ẹ́dẹ́gbàarùn-ún ẹ̀ẹ́dẹ́gbàarùn-ún ẹ̀ẹ́dẹ́gbàarùn-ún
10,000 ẹgbàarùn-ún ẹgbàarùn-ún ẹgbàarùn-ún ẹgbàarùn-ún
11,000 ẹ̀ẹ́dẹ́gbàafà ẹ̀ẹ́dẹ́gbàafà ẹ̀ẹ́dẹ́gbàafà ẹ̀ẹ́dẹ́gbàafà
12,000 ẹgbàafà ẹgbàafà ẹgbàafà ẹgbàafà
13,000 ẹ̀ẹ́dẹ́gbàaje ẹ̀ẹ́dẹ́gbàaje ẹ̀ẹ́dẹ́gbàaje ẹ̀ẹ́dẹ́gbàaje
14,000 ẹgbàaje ẹgbàaje ẹgbàaje ẹgbàaje
15,000 ẹ̀ẹ́dẹ́gbàajọ ẹ̀ẹ́dẹ́gbàajọ ẹ̀ẹ́dẹ́gbàajọ ẹ̀ẹ́dẹ́gbàajọ
16,000 ẹgbàajọ ẹgbàajọ ẹgbàajọ ẹgbàajọ
17,000 ẹ̀ẹ́dẹ́gbàasàn-án ẹ̀ẹ́dẹ́gbàasàn-án ẹ̀ẹ́dẹ́gbàasàn-án ẹ̀ẹ́dẹ́gbàasàn-án
18,000 ẹgbàasàn-án ẹgbàasàn-án ẹgbàasàn-án ẹgbàasàn-án
19,000 ẹ̀ẹ́dẹ́gbàawàá ẹ̀ẹ́dẹ́gbàawàá ẹ̀ẹ́dẹ́gbàawàá ẹ̀ẹ́dẹ́gbàawàá
20,000 ọ̀kẹ́, ẹgbàawàá ọ̀kẹ́ kan, ẹgbàawàá ọ̀kẹ́ kan, ẹgbàawàá ẹgbàawàá
100,000 ọ̀kẹ́ márùn-ún ọ̀kẹ́ márùn-ún ọ̀kẹ́ márùn-ún ọ̀kẹ́ márùn-ún
1,000,000 (106) àádọ́ta ọ̀kẹ́, ẹgbẹ̀ẹgbẹ̀rún, mílíọ̀nù àádọ́ta ọ̀kẹ́, ẹgbẹ̀ẹgbẹ̀rún, mílíọ̀nù kan àádọ́ta ọ̀kẹ́, ẹgbẹ̀ẹgbẹ̀rún, mílíọ̀nù kan àádọ́ta ọ̀kẹ́, ẹgbẹ̀ẹgbẹ̀rún, mílíọ̀nù kan
1,000,000,000 (109) bílíọ̀nù bílíọ̀n kan bílíọ̀n kan bílíọ̀n kan
1012 tírílíọ̀nù tírílíọ̀nù kan tírílíọ̀nù kan tírílíọ̀nù kan

local export = {}

export.additional_number_types = {
	{ key = "counting", display = "[[counting number|Counting]]", after = "cardinal" },
	{ key = "adjectival", display = "[[adjectival|Adjectival]]", after = "counting" },
}

local numbers = {}
export.numbers = numbers

-- Delete any number types that don't apply.
--[[ template
numbers[1] = {
	cardinal = "",
	counting = "",
	adjectival = "",
	ordinal = "",
	adverbial = "",
	distributive = "",
	collective = "",
	fractional = "",
}

template past 4:
numbers[5] = {
	cardinal = "",
	counting = "",
}
]]

local adjectival_prefix = "m"
local ordinal_prefix = "k"
local adverbial_prefix = "ẹ̀ẹ̀"
local fractional_prefix = "ìdá"
local low_tones = {
	a = "àà",
	e = "èè",
	['ẹ'] = "ẹ̀ẹ̀",
	i = "ìì",
	o = "òò",
	['ọ'] = "ọ̀ọ̀",
	u = "ùù",
}

numbers[0] = {
	cardinal = "òdo",
	counting = {"òdo", "oódo"}
}

numbers[1] = {
	cardinal = {"ọ̀kan", "ení"},
	counting = "oókan",
	adjectival = {"kan", "méní"},
	ordinal = {"kìíní", "kìn-ín-ní"},
	adverbial = adverbial_prefix .. "kan",
	distributive = "ọ̀kọ̀ọ̀kan",
	collective = "ọ̀kọ̀ọ̀kan",
}

numbers[2] = {
	cardinal = "èjì",
	counting = "eéjì",
	fractional = "ìdajì",
}

numbers[3] = {
	cardinal = "ẹ̀ta",
	counting = "ẹẹ́ta",
	fractional = "ìdata",
}

numbers[4] = {
	cardinal = "ẹ̀rin",
	counting = "ẹẹ́rin",
	fractional = "ìdarin",
}

numbers[5] = {
	cardinal = "àrún",
	counting = "aárùn-ún",
}

numbers[6] = {
	cardinal = "ẹ̀fà",
	counting = "ẹẹ́fà",
}

numbers[7] = {
	cardinal = "èje",
	counting = "eéje",
}

numbers[8] = {
	cardinal = "ẹ̀jọ",
	counting = "ẹẹ́jọ",
}

numbers[9] = {
	cardinal = "ẹ̀sán",
	counting = "ẹẹ́sàn-án",
}

numbers[10] = {
	cardinal = "ẹ̀wá",
	counting = "ẹẹ́wàá",
}

numbers[20] = {
	cardinal = "ogún",
	counting = "ogún",
	adjectival = "ogún",
	ordinal = "ogún",
	adverbial = "[[ìgbà]] [[ogún]]",
	distributive = "ogoogún",
	collective = "[[gbogbo]] [[ogún]]",
	fractional = "ìdá ogún",
}

numbers[30] = {
	cardinal = "ọgbọ̀n",
	counting = "ọgbọ̀n",
	adjectival = "ọgbọ̀n",
	ordinal = "ọgbọ̀n",
	adverbial = "[[ìgbà]] [[ọgbọ̀n]]",
	distributive = "ọgbọọgbọ̀n",
	collective = "[[gbogbo]] [[ọgbọ̀n]]",
	fractional = "ìdá ọgbọ̀n",
}

numbers[200] = {
	cardinal = "igba",
	counting = "igba",
	adjectival = "igba",
	ordinal = "igba",
	adverbial = "ìgbà igba",
	distributive = "igba igba",
}

local function create_adjectival(number)
	if number > 10 then
		last_digit = math.floor(number%10)
		if last_digit == 1 or last_digit == 9 then
			return adjectival_prefix .. "ọ́" .. mw.ustring.sub(numbers[number].counting, 3)
		end
	end
	return adjectival_prefix .. mw.ustring.sub(numbers[number].counting, 2)
end

local function create_ord_adv_sub(number)
	base_form = numbers[number].counting
	if number > 10 then
		last_digit = math.floor(number%10)
		if last_digit == 1 or last_digit == 9 then
			base_form = "ọọ́" .. mw.ustring.sub(base_form, 3)
		end
	end
	
	if mw.ustring.sub(base_form, 3, 3) == "́" then
		return mw.ustring.sub(base_form, 1, 1) .. mw.ustring.sub(base_form, 4)
	else 
		return mw.ustring.sub(base_form, 1, 1) .. mw.ustring.sub(base_form, 3)
	end
end

local function create_collective(number)
	str = mw.ustring.sub(numbers[number].counting, 1, 1)
	if number > 10 then
		last_digit = math.floor(number%10)
		if last_digit == 1 or last_digit == 9 then
			str = "ọ"
		end
	end
	s = low_tones[str]
	if mw.ustring.sub(numbers[number].adjectival, 3, 3) == "́" then
		return mw.ustring.sub(numbers[number].adjectival, 1, 4) .. s .. mw.ustring.sub(numbers[number].adjectival, 4)
	else
		return mw.ustring.sub(numbers[number].adjectival, 1, 3) .. s .. mw.ustring.sub(numbers[number].adjectival, 3)
	end
end

local function get_cardinal(number)
	return numbers[number].cardinal
end

local function get_adjectival(number)
	return numbers[number].adjectival
end

local pre_teens = "lá"
local minus = "dín"
local plus = "lé"
local last_start = {
	['à'] = "láà",
	i = "ní",
	o = "ló",
	['ọ'] = "lọ́",
}

local replace_card = {
	["1"] = "ọ̀kàn",
	["2"] = "èjì",
	["3"] = "ẹ̀tà",
	["4"] = "ẹ̀rìn",
	["5"] = "àrún",
}

local replace_count = {
	["1"] = "oókàn",
	["2"] = "eéjì",
	["3"] = "ẹẹ́tà",
	["4"] = "ẹẹ́rìn",
	["5"] = "aárùn-ún",
}

for number = 11, 14 do
	base_num = number - 10
	numbers[number] = {
		cardinal = replace_card[tostring(base_num)] .. pre_teens,
		counting = replace_count[tostring(base_num)] .. pre_teens,
	}
end

for number = 15, 19 do
	base_num = 10 - (number - 10)
	numbers[number] = {
		cardinal = replace_card[tostring(base_num)] .. minus .. "lógún",
		counting = replace_count[tostring(base_num)] .. minus .. "lógún",
	}
end

for number = 2, 19 do
	str = create_ord_adv_sub(number)
	numbers[number].adjectival = create_adjectival(number)
	numbers[number].ordinal = ordinal_prefix .. str
	numbers[number].distributive = get_adjectival(number) .. " " .. get_adjectival(number)
	numbers[number].adverbial = adverbial_prefix .. adjectival_prefix .. str
	numbers[number].collective = create_collective(number)
end

for number = 5, 19 do
	numbers[number].fractional = fractional_prefix .. get_adjectival(number)
end 

local twenties_endings = {
	['2'] = "jì",
	['3'] = "ta",
	['4'] = "rin",
	['5'] = "rùn-ún",
	['6'] = "fà",
	['7'] = "je",
	['8'] = "jọ",
	['9'] = "sàn-án",
	['10'] = "wàá",
}

-- Creates base form for 20s
local function create_twenties(number) 
	str = numbers[number].counting
	if mw.ustring.sub(str, 1, 1) == "e" then
		return "ogó" .. twenties_endings[tostring(number)]
	else
		return "ọgọ́" .. twenties_endings[tostring(number)]
	end
end

-- Creates base form for 10s in-between 20s
local function create_mid_twenties(number)
	str = numbers[number].counting
	if mw.ustring.sub(str, 1, 1) == "o" then
		return "àádó" .. twenties_endings[tostring(number / 20)]
	else
		return "àádọ́" .. twenties_endings[tostring(number / 20)]
	end
end

-- Add cardinals & counting numbers for 21-185
for i = 1, 10 do
	local twenties = i * 20
	local twenties_cardinal
	local mid_twenties
	if i ~= 1 then 
		twenties_cardinal = create_twenties(i)
		if i ~= 10 then
			numbers[twenties] = {
				cardinal = twenties_cardinal,
				counting = twenties_cardinal,
				adjectival = twenties_cardinal,
				ordinal = twenties_cardinal,
				adverbial = 'ìgbà' .. " " .. twenties_cardinal,
				distributive = twenties_cardinal .. " " .. twenties_cardinal,
			}
		end
		if i ~= 2 and i ~= 10 then
			mid_twenties = create_mid_twenties(twenties)
			numbers[twenties - 10] = {
				cardinal = mid_twenties,
				counting = mid_twenties,
				adjectival = mid_twenties,
				ordinal = mid_twenties,
				adverbial = 'ìgbà' .. " " .. mid_twenties,
				distributive = mid_twenties .. " " .. mid_twenties,
			}
		elseif i == 10 then
			mid_twenties = "àádọ́wàá"
			numbers[twenties - 10] = {
				cardinal = mid_twenties,
				counting = mid_twenties,
				adjectival = mid_twenties,
				ordinal = mid_twenties,
				adverbial = 'ìgbà' .. " " .. mid_twenties,
				distributive = mid_twenties .. " " .. mid_twenties,
			}
		else 
			mid_twenties = numbers[twenties - 10].cardinal
		end
	end
	if i ~= 1 then
		for ones = -15, -11 do 
			base_num = -10 - ones
			check = mw.ustring.sub(mid_twenties, 1, 1)
			numbers[twenties + ones] = {
				cardinal = replace_card[tostring(base_num)] .. minus .. last_start[check] .. mw.ustring.sub(mid_twenties, 2),
				counting = replace_count[tostring(base_num)] .. minus .. last_start[check] .. mw.ustring.sub(mid_twenties, 2),
			}
			numbers[twenties + ones].adjectival = create_adjectival(twenties + ones)
		end
		for ones = -9, -6 do
			base_num = 10 + ones
			check = mw.ustring.sub(mid_twenties, 1, 1)
			numbers[twenties + ones] = {
				cardinal = replace_card[tostring(base_num)] .. plus .. last_start[check] .. mw.ustring.sub(mid_twenties, 2),
				counting = replace_count[tostring(base_num)] .. plus .. last_start[check] .. mw.ustring.sub(mid_twenties, 2),
			}
			numbers[twenties + ones].adjectival = create_adjectival(twenties + ones)
		end
	end
	twenties_cardinal = numbers[twenties].cardinal
	for ones = -5, -1 do
		base_num = 0 - ones
		check = mw.ustring.sub(twenties_cardinal, 1, 1)
		numbers[twenties + ones] = {
			cardinal = replace_card[tostring(base_num)] .. minus .. last_start[check] .. mw.ustring.sub(twenties_cardinal, 2),
			counting = replace_count[tostring(base_num)] .. minus .. last_start[check] .. mw.ustring.sub(twenties_cardinal, 2)
		}
		numbers[twenties + ones].adjectival = create_adjectival(twenties + ones)
	end
	if i ~= 10 then
		for ones = 1, 4 do
			base_num = ones
			check = mw.ustring.sub(twenties_cardinal, 1, 1)
			numbers[twenties + ones] = {
				cardinal = replace_card[tostring(base_num)] .. plus .. last_start[check] .. mw.ustring.sub(twenties_cardinal, 2),
				counting = replace_count[tostring(base_num)] .. plus .. last_start[check] .. mw.ustring.sub(twenties_cardinal, 2)
			}
			numbers[twenties + ones].adjectival = create_adjectival(twenties + ones)
		end
	end
end

numbers[300] = {
	cardinal = "ọ̀ọ́dúnrún",
	counting = "ọ̀ọ́dúnrún",
	adjectival = "ọ̀ọ́dúnrún",
	ordinal = "ọ̀ọ́dúnrún",
	adverbial = "ìgbà ọ̀ọ́dúnrún",
	distributive = "ọ̀ọ́dúnrún ọ̀ọ́dúnrún",
}

numbers[400] = {
	cardinal = "irinwó",
	counting = "irinwó",
	adjectival = "irinwó",
	ordinal = "irinwó",
	adverbial = "ìgbà irinwó",
	distributive = "irinwó irinwó",
}

numbers[2000] = {
	cardinal = {"ẹgbàá","ẹgbẹ̀wàá"},
	counting = {"ẹgbàá", "ẹgbẹ̀wàá"},
	adjectival = {"ẹgbàá", "ẹgbẹ̀wàá"},
	ordinal = {"ẹgbàá", "ẹgbẹ̀wàá"},
}
numbers[20000] = {
	cardinal = "ọ̀kẹ́",
	counting = "ọ̀kẹ́ kan",
}

-- Endings for the 200s 
local two_hundreds_endings = {
	['3'] = "ta",
	['4'] = "rin",
	['5'] = "rún",
	['6'] = "fà",
	['7'] = "je",
	['8'] = "jọ",
	['9'] = "sán",
	['10'] = "wá",
	['11'] = "ọ̀kànlá",
	['12'] = "jìlá",
	['13'] = "tàlá",
	['14'] = "rìnlá",
	['15'] = "ẹ́dógún",
	['16'] = "rìndínlógún",
	['17'] = "tàdínlógún",
	['18'] = "jìdínlógún",
	['19'] = "ọ̀kàndínlógún",
}

-- Creates base form for 200s
local function create_two_hundreds(number) 
	str = numbers[number].counting
	if mw.ustring.sub(str, 1, 1) == "e" then
		return "egbè" .. two_hundreds_endings[tostring(number)]
	elseif mw.ustring.sub(str, 1, 1) == "o" then
		return "ẹgb" .. two_hundreds_endings[tostring(number)]
	else
		return "ẹgbẹ̀" .. two_hundreds_endings[tostring(number)]
	end
end

-- Creates base form for 100s in-between 200s
local function create_mid_two_hundreds(number)
	str = numbers[number].counting
	if mw.ustring.sub(str, 1, 1) == "e" then
		return "èédé" .. mw.ustring.sub(str, 2)
	else
		return "ẹ̀ẹ́dẹ́" .. mw.ustring.sub(str, 2)
	end
end

-- Creates 100s from 200-2000
for i = 3, 10 do
	local two_hundreds = i * 200
	local mid_two_hundreds
	if i ~= 10 then
		two_hundreds_cardinals = create_two_hundreds(i)
		numbers[two_hundreds] = {
			cardinal = two_hundreds_cardinals,
			counting = two_hundreds_cardinals,
			adjectival = two_hundreds_cardinals,
			ordinal = two_hundreds_cardinals,
		}
	end
	if i ~= 10 then
		mid_two_hundreds = create_mid_two_hundreds(two_hundreds)
		numbers[two_hundreds - 100] = {
			cardinal = mid_two_hundreds,
			counting = mid_two_hundreds,
			adjectival = mid_two_hundreds,
			ordinal = mid_two_hundreds,
		}
	else
		mid_two_hundreds = "ẹ̀ẹ́dẹ́gbẹ̀wàá"
		numbers[two_hundreds - 100] = {
			cardinal = mid_two_hundreds,
			counting = mid_two_hundreds,
			adjectival = mid_two_hundreds,
			ordinal = mid_two_hundreds,
		}
	end
end

-- Creates base form for 2000s
local function create_two_thousands(number) 
	return "ẹgbàa" .. twenties_endings[tostring(number)]
end

-- Creates base form for 1000s in-between 2000s
local function create_mid_two_thousands(number)
	str = numbers[number].counting
	return "ẹ̀ẹ́dẹ́" .. mw.ustring.sub(str, 2)
end

-- Creates 1000s from 2000-20000
for i = 2, 10 do
	local two_thousands = i * 2000
	local mid_two_thousands
	if i ~= 10 then
		two_thousands_cardinals = create_two_thousands(i)
		numbers[two_thousands] = {
			cardinal = two_thousands_cardinals,
			counting = two_thousands_cardinals,
			adjectival = two_thousands_cardinals,
			ordinal = two_thousands_cardinals,
		}
	end
	if i ~= 10 then
		mid_two_thousands = create_mid_two_thousands(two_thousands)
		numbers[two_thousands - 1000] = {
			cardinal = mid_two_thousands,
			counting = mid_two_thousands,
			adjectival = mid_two_thousands,
			ordinal = mid_two_thousands,
		}
	else 
		two_thousands_cardinals = create_two_thousands(i)
		x = numbers[two_thousands].cardinal
		y = numbers[two_thousands].counting
		numbers[two_thousands] = {
			cardinal = {x, two_thousands_cardinals},
			counting = {y, two_thousands_cardinals},
			adjectival = {y, two_thousands_cardinals},
			ordinal = two_thousands_cardinals,
		}
		mid_two_thousands = "ẹ̀ẹ́dẹ́" .. mw.ustring.sub(two_thousands_cardinals, 2)
		numbers[two_thousands - 1000] = {
			cardinal = mid_two_thousands,
			counting = mid_two_thousands,
			adjectival = mid_two_thousands,
			ordinal = mid_two_thousands,
		}
	end
end

-- Creates 100s from 2000-3800
for i = 11, 19 do
	local two_hundreds = i * 200
	local mid_two_hundreds
	if i ~= 15 then
		two_hundreds_cardinals = create_two_hundreds(i)
		numbers[two_hundreds] = {
			cardinal = two_hundreds_cardinals,
			counting = two_hundreds_cardinals,
			adjectival = two_hundreds_cardinals,
			ordinal = two_hundreds_cardinals,
		}
	end
	if i ~= 15 then
		mid_two_hundreds = create_mid_two_hundreds(two_hundreds)
		numbers[two_hundreds - 100] = {
			cardinal = mid_two_hundreds,
			counting = mid_two_hundreds,
			adjectival = mid_two_hundreds,
			ordinal = mid_two_hundreds,
		}
	else 
		two_hundreds_cardinals = create_two_hundreds(i)
		x = numbers[two_hundreds].cardinal
		numbers[two_hundreds] = {
			cardinal = {x, two_hundreds_cardinals},
			counting = {x, two_hundreds_cardinals},
			adjectival = {x, two_hundreds_cardinals},
			ordinal = {x, two_hundreds_cardinals},
		}
		mid_two_hundreds = "ẹ̀ẹ́dẹ́" .. mw.ustring.sub(two_hundreds_cardinals, 2)
		numbers[two_hundreds - 100] = {
			cardinal = mid_two_hundreds,
			counting = mid_two_hundreds,
			adjectival = mid_two_hundreds,
			ordinal = mid_two_hundreds,
		}
	end
end

numbers[15] = {
	cardinal = {numbers[15].cardinal, "ẹ̀ẹ́dógún"},
	counting = {numbers[15].counting, "ẹ̀ẹ́dógún"},
	adjectival = {numbers[15].adjectival, "mẹ́ẹ̀ẹ́dógún"},
	ordinal = {numbers[15].ordinal, "kẹẹ́dógún"},
}

num_5000 = numbers[5000].cardinal
numbers[5000] = {
	cardinal = {num_5000, "ẹgbẹ̀ẹ́dọ́gbọ̀n"},
	counting = {num_5000, "ẹgbẹ̀ẹ́dọ́gbọ̀n"},
	adjectival = {num_5000, "ẹgbẹ̀ẹ́dọ́gbọ̀n"},
	ordinal = {num_5000, "ẹgbẹ̀ẹ́dọ́gbọ̀n"},
}

numbers[100000] = {
	cardinal = "ọ̀kẹ́ márùn-ún",
	counting = "ọ̀kẹ́ márùn-ún",
	adjectival = "ọ̀kẹ́ márùn-ún",
	ordinal = "ọ̀kẹ́ márùn-ún",
}

numbers[1000000] = {
	cardinal = {"àádọ́ta ọ̀kẹ́", "ẹgbẹ̀ẹgbẹ̀rún", "mílíọ̀nù"},
	counting = {"àádọ́ta ọ̀kẹ́", "ẹgbẹ̀ẹgbẹ̀rún", "mílíọ̀nù kan"},
	adjectival = {"àádọ́ta ọ̀kẹ́", "ẹgbẹ̀ẹgbẹ̀rún", "mílíọ̀nù kan"},
	ordinal = {"àádọ́ta ọ̀kẹ́", "ẹgbẹ̀ẹgbẹ̀rún", "mílíọ̀nù kan"},
}

numbers[1000000000] = {
	cardinal = {"bílíọ̀nù"},
	counting = {"bílíọ̀n kan"},
	adjectival = {"bílíọ̀n kan"},
	ordinal = {"bílíọ̀n kan"},
}

numbers[1000000000000] = {
	cardinal = {"tírílíọ̀nù"},
	counting = {"tírílíọ̀nù kan"},
	adjectival = {"tírílíọ̀nù kan"},
	ordinal = {"tírílíọ̀nù kan"},
}
return export