carmens 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (895) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +0 -0
  3. data/MIT-LICENSE +34 -0
  4. data/README.md +0 -0
  5. data/iso_data/base/world.yml +997 -0
  6. data/iso_data/base/world/ad.yml +15 -0
  7. data/iso_data/base/world/ae.yml +15 -0
  8. data/iso_data/base/world/af.yml +69 -0
  9. data/iso_data/base/world/ag.yml +17 -0
  10. data/iso_data/base/world/al.yml +25 -0
  11. data/iso_data/base/world/al/01.yml +7 -0
  12. data/iso_data/base/world/al/02.yml +5 -0
  13. data/iso_data/base/world/al/03.yml +9 -0
  14. data/iso_data/base/world/al/04.yml +7 -0
  15. data/iso_data/base/world/al/05.yml +7 -0
  16. data/iso_data/base/world/al/06.yml +9 -0
  17. data/iso_data/base/world/al/07.yml +7 -0
  18. data/iso_data/base/world/al/08.yml +7 -0
  19. data/iso_data/base/world/al/09.yml +7 -0
  20. data/iso_data/base/world/al/10.yml +7 -0
  21. data/iso_data/base/world/al/11.yml +5 -0
  22. data/iso_data/base/world/al/12.yml +7 -0
  23. data/iso_data/base/world/am.yml +23 -0
  24. data/iso_data/base/world/ao.yml +37 -0
  25. data/iso_data/base/world/ar.yml +47 -0
  26. data/iso_data/base/world/at.yml +19 -0
  27. data/iso_data/base/world/au.yml +17 -0
  28. data/iso_data/base/world/az.yml +141 -0
  29. data/iso_data/base/world/az/nx.yml +17 -0
  30. data/iso_data/base/world/ba.yml +7 -0
  31. data/iso_data/base/world/ba/bih.yml +21 -0
  32. data/iso_data/base/world/bb.yml +23 -0
  33. data/iso_data/base/world/bd.yml +15 -0
  34. data/iso_data/base/world/bd/1.yml +13 -0
  35. data/iso_data/base/world/bd/2.yml +23 -0
  36. data/iso_data/base/world/bd/3.yml +35 -0
  37. data/iso_data/base/world/bd/4.yml +21 -0
  38. data/iso_data/base/world/bd/5.yml +33 -0
  39. data/iso_data/base/world/bd/6.yml +9 -0
  40. data/iso_data/base/world/bd/a.yml +13 -0
  41. data/iso_data/base/world/bd/b.yml +23 -0
  42. data/iso_data/base/world/bd/c.yml +35 -0
  43. data/iso_data/base/world/bd/d.yml +21 -0
  44. data/iso_data/base/world/bd/e.yml +17 -0
  45. data/iso_data/base/world/bd/f.yml +17 -0
  46. data/iso_data/base/world/bd/g.yml +9 -0
  47. data/iso_data/base/world/be.yml +7 -0
  48. data/iso_data/base/world/be/vlg.yml +11 -0
  49. data/iso_data/base/world/be/wal.yml +11 -0
  50. data/iso_data/base/world/bf.yml +27 -0
  51. data/iso_data/base/world/bf/01.yml +13 -0
  52. data/iso_data/base/world/bf/02.yml +5 -0
  53. data/iso_data/base/world/bf/03.yml +3 -0
  54. data/iso_data/base/world/bf/04.yml +7 -0
  55. data/iso_data/base/world/bf/05.yml +7 -0
  56. data/iso_data/base/world/bf/06.yml +9 -0
  57. data/iso_data/base/world/bf/07.yml +7 -0
  58. data/iso_data/base/world/bf/08.yml +11 -0
  59. data/iso_data/base/world/bf/09.yml +7 -0
  60. data/iso_data/base/world/bf/10.yml +9 -0
  61. data/iso_data/base/world/bf/11.yml +7 -0
  62. data/iso_data/base/world/bf/12.yml +9 -0
  63. data/iso_data/base/world/bf/13.yml +9 -0
  64. data/iso_data/base/world/bg.yml +57 -0
  65. data/iso_data/base/world/bh.yml +11 -0
  66. data/iso_data/base/world/bi.yml +33 -0
  67. data/iso_data/base/world/bj.yml +25 -0
  68. data/iso_data/base/world/bl.yml +1 -0
  69. data/iso_data/base/world/bn.yml +9 -0
  70. data/iso_data/base/world/bo.yml +19 -0
  71. data/iso_data/base/world/bq.yml +7 -0
  72. data/iso_data/base/world/br.yml +57 -0
  73. data/iso_data/base/world/bs.yml +63 -0
  74. data/iso_data/base/world/bt.yml +41 -0
  75. data/iso_data/base/world/bw.yml +19 -0
  76. data/iso_data/base/world/by.yml +15 -0
  77. data/iso_data/base/world/bz.yml +13 -0
  78. data/iso_data/base/world/ca.yml +27 -0
  79. data/iso_data/base/world/cd.yml +23 -0
  80. data/iso_data/base/world/cf.yml +35 -0
  81. data/iso_data/base/world/cg.yml +23 -0
  82. data/iso_data/base/world/ch.yml +53 -0
  83. data/iso_data/base/world/ci.yml +39 -0
  84. data/iso_data/base/world/cl.yml +31 -0
  85. data/iso_data/base/world/cm.yml +21 -0
  86. data/iso_data/base/world/cn.yml +69 -0
  87. data/iso_data/base/world/co.yml +67 -0
  88. data/iso_data/base/world/cr.yml +15 -0
  89. data/iso_data/base/world/cu.yml +31 -0
  90. data/iso_data/base/world/cv.yml +5 -0
  91. data/iso_data/base/world/cv/b.yml +15 -0
  92. data/iso_data/base/world/cv/s.yml +31 -0
  93. data/iso_data/base/world/cy.yml +13 -0
  94. data/iso_data/base/world/cz.yml +29 -0
  95. data/iso_data/base/world/cz/jc.yml +15 -0
  96. data/iso_data/base/world/cz/jm.yml +15 -0
  97. data/iso_data/base/world/cz/ka.yml +7 -0
  98. data/iso_data/base/world/cz/kr.yml +11 -0
  99. data/iso_data/base/world/cz/li.yml +9 -0
  100. data/iso_data/base/world/cz/mo.yml +13 -0
  101. data/iso_data/base/world/cz/ol.yml +11 -0
  102. data/iso_data/base/world/cz/pa.yml +9 -0
  103. data/iso_data/base/world/cz/pl.yml +15 -0
  104. data/iso_data/base/world/cz/pr.yml +31 -0
  105. data/iso_data/base/world/cz/st.yml +25 -0
  106. data/iso_data/base/world/cz/us.yml +15 -0
  107. data/iso_data/base/world/cz/vy.yml +11 -0
  108. data/iso_data/base/world/cz/zl.yml +9 -0
  109. data/iso_data/base/world/de.yml +33 -0
  110. data/iso_data/base/world/dj.yml +13 -0
  111. data/iso_data/base/world/dk.yml +11 -0
  112. data/iso_data/base/world/dm.yml +21 -0
  113. data/iso_data/base/world/do.yml +61 -0
  114. data/iso_data/base/world/dz.yml +97 -0
  115. data/iso_data/base/world/ec.yml +49 -0
  116. data/iso_data/base/world/ee.yml +31 -0
  117. data/iso_data/base/world/eg.yml +57 -0
  118. data/iso_data/base/world/er.yml +13 -0
  119. data/iso_data/base/world/es.yml +39 -0
  120. data/iso_data/base/world/es/an.yml +17 -0
  121. data/iso_data/base/world/es/ar.yml +7 -0
  122. data/iso_data/base/world/es/as.yml +3 -0
  123. data/iso_data/base/world/es/cb.yml +3 -0
  124. data/iso_data/base/world/es/cl.yml +19 -0
  125. data/iso_data/base/world/es/cm.yml +11 -0
  126. data/iso_data/base/world/es/cn.yml +5 -0
  127. data/iso_data/base/world/es/ct.yml +9 -0
  128. data/iso_data/base/world/es/ex.yml +5 -0
  129. data/iso_data/base/world/es/ga.yml +9 -0
  130. data/iso_data/base/world/es/ib.yml +3 -0
  131. data/iso_data/base/world/es/mc.yml +3 -0
  132. data/iso_data/base/world/es/md.yml +3 -0
  133. data/iso_data/base/world/es/nc.yml +3 -0
  134. data/iso_data/base/world/es/pv.yml +7 -0
  135. data/iso_data/base/world/es/ri.yml +3 -0
  136. data/iso_data/base/world/es/vc.yml +7 -0
  137. data/iso_data/base/world/et.yml +23 -0
  138. data/iso_data/base/world/fi.yml +39 -0
  139. data/iso_data/base/world/fj.yml +11 -0
  140. data/iso_data/base/world/fm.yml +9 -0
  141. data/iso_data/base/world/fr.yml +71 -0
  142. data/iso_data/base/world/fr/a.yml +5 -0
  143. data/iso_data/base/world/fr/b.yml +11 -0
  144. data/iso_data/base/world/fr/c.yml +9 -0
  145. data/iso_data/base/world/fr/d.yml +9 -0
  146. data/iso_data/base/world/fr/e.yml +9 -0
  147. data/iso_data/base/world/fr/f.yml +13 -0
  148. data/iso_data/base/world/fr/g.yml +9 -0
  149. data/iso_data/base/world/fr/h.yml +5 -0
  150. data/iso_data/base/world/fr/i.yml +9 -0
  151. data/iso_data/base/world/fr/j.yml +17 -0
  152. data/iso_data/base/world/fr/k.yml +11 -0
  153. data/iso_data/base/world/fr/l.yml +7 -0
  154. data/iso_data/base/world/fr/m.yml +9 -0
  155. data/iso_data/base/world/fr/n.yml +17 -0
  156. data/iso_data/base/world/fr/o.yml +5 -0
  157. data/iso_data/base/world/fr/p.yml +7 -0
  158. data/iso_data/base/world/fr/q.yml +5 -0
  159. data/iso_data/base/world/fr/r.yml +11 -0
  160. data/iso_data/base/world/fr/s.yml +7 -0
  161. data/iso_data/base/world/fr/t.yml +9 -0
  162. data/iso_data/base/world/fr/u.yml +13 -0
  163. data/iso_data/base/world/fr/v.yml +17 -0
  164. data/iso_data/base/world/ga.yml +19 -0
  165. data/iso_data/base/world/gb.yml +475 -0
  166. data/iso_data/base/world/gd.yml +15 -0
  167. data/iso_data/base/world/ge.yml +25 -0
  168. data/iso_data/base/world/gg.yml +1 -0
  169. data/iso_data/base/world/gh.yml +21 -0
  170. data/iso_data/base/world/gl.yml +9 -0
  171. data/iso_data/base/world/gm.yml +13 -0
  172. data/iso_data/base/world/gn.yml +17 -0
  173. data/iso_data/base/world/gn/b.yml +11 -0
  174. data/iso_data/base/world/gn/d.yml +11 -0
  175. data/iso_data/base/world/gn/f.yml +9 -0
  176. data/iso_data/base/world/gn/k.yml +11 -0
  177. data/iso_data/base/world/gn/l.yml +11 -0
  178. data/iso_data/base/world/gn/m.yml +7 -0
  179. data/iso_data/base/world/gn/n.yml +13 -0
  180. data/iso_data/base/world/gq.yml +5 -0
  181. data/iso_data/base/world/gq/c.yml +9 -0
  182. data/iso_data/base/world/gq/i.yml +7 -0
  183. data/iso_data/base/world/gr.yml +29 -0
  184. data/iso_data/base/world/gr/a.yml +11 -0
  185. data/iso_data/base/world/gr/b.yml +15 -0
  186. data/iso_data/base/world/gr/c.yml +9 -0
  187. data/iso_data/base/world/gr/d.yml +7 -0
  188. data/iso_data/base/world/gr/e.yml +9 -0
  189. data/iso_data/base/world/gr/f.yml +11 -0
  190. data/iso_data/base/world/gr/g.yml +7 -0
  191. data/iso_data/base/world/gr/h.yml +11 -0
  192. data/iso_data/base/world/gr/i.yml +3 -0
  193. data/iso_data/base/world/gr/j.yml +11 -0
  194. data/iso_data/base/world/gr/k.yml +7 -0
  195. data/iso_data/base/world/gr/l.yml +5 -0
  196. data/iso_data/base/world/gr/m.yml +9 -0
  197. data/iso_data/base/world/gt.yml +45 -0
  198. data/iso_data/base/world/gw.yml +9 -0
  199. data/iso_data/base/world/gw/l.yml +5 -0
  200. data/iso_data/base/world/gw/n.yml +7 -0
  201. data/iso_data/base/world/gw/s.yml +7 -0
  202. data/iso_data/base/world/gy.yml +21 -0
  203. data/iso_data/base/world/hn.yml +37 -0
  204. data/iso_data/base/world/hr.yml +43 -0
  205. data/iso_data/base/world/ht.yml +19 -0
  206. data/iso_data/base/world/hu.yml +87 -0
  207. data/iso_data/base/world/id.yml +15 -0
  208. data/iso_data/base/world/id/ij.yml +5 -0
  209. data/iso_data/base/world/id/jw.yml +13 -0
  210. data/iso_data/base/world/id/ka.yml +9 -0
  211. data/iso_data/base/world/id/ma.yml +5 -0
  212. data/iso_data/base/world/id/ml.yml +5 -0
  213. data/iso_data/base/world/id/nu.yml +7 -0
  214. data/iso_data/base/world/id/sl.yml +13 -0
  215. data/iso_data/base/world/id/sm.yml +21 -0
  216. data/iso_data/base/world/ie.yml +9 -0
  217. data/iso_data/base/world/ie/c.yml +11 -0
  218. data/iso_data/base/world/ie/l.yml +25 -0
  219. data/iso_data/base/world/ie/m.yml +13 -0
  220. data/iso_data/base/world/ie/u.yml +7 -0
  221. data/iso_data/base/world/il.yml +13 -0
  222. data/iso_data/base/world/im.yml +1 -0
  223. data/iso_data/base/world/in.yml +71 -0
  224. data/iso_data/base/world/iq.yml +37 -0
  225. data/iso_data/base/world/ir.yml +61 -0
  226. data/iso_data/base/world/is.yml +19 -0
  227. data/iso_data/base/world/it.yml +41 -0
  228. data/iso_data/base/world/it/21.yml +17 -0
  229. data/iso_data/base/world/it/23.yml +3 -0
  230. data/iso_data/base/world/it/25.yml +25 -0
  231. data/iso_data/base/world/it/32.yml +5 -0
  232. data/iso_data/base/world/it/34.yml +15 -0
  233. data/iso_data/base/world/it/36.yml +9 -0
  234. data/iso_data/base/world/it/42.yml +9 -0
  235. data/iso_data/base/world/it/45.yml +19 -0
  236. data/iso_data/base/world/it/52.yml +21 -0
  237. data/iso_data/base/world/it/55.yml +5 -0
  238. data/iso_data/base/world/it/57.yml +11 -0
  239. data/iso_data/base/world/it/62.yml +11 -0
  240. data/iso_data/base/world/it/65.yml +9 -0
  241. data/iso_data/base/world/it/67.yml +5 -0
  242. data/iso_data/base/world/it/72.yml +11 -0
  243. data/iso_data/base/world/it/75.yml +13 -0
  244. data/iso_data/base/world/it/77.yml +5 -0
  245. data/iso_data/base/world/it/78.yml +11 -0
  246. data/iso_data/base/world/it/82.yml +19 -0
  247. data/iso_data/base/world/it/88.yml +17 -0
  248. data/iso_data/base/world/je.yml +1 -0
  249. data/iso_data/base/world/jm.yml +29 -0
  250. data/iso_data/base/world/jo.yml +25 -0
  251. data/iso_data/base/world/jp.yml +95 -0
  252. data/iso_data/base/world/ke.yml +15 -0
  253. data/iso_data/base/world/kg.yml +17 -0
  254. data/iso_data/base/world/kh.yml +49 -0
  255. data/iso_data/base/world/ki.yml +7 -0
  256. data/iso_data/base/world/km.yml +7 -0
  257. data/iso_data/base/world/kn.yml +5 -0
  258. data/iso_data/base/world/kn/k.yml +19 -0
  259. data/iso_data/base/world/kn/n.yml +11 -0
  260. data/iso_data/base/world/kp.yml +23 -0
  261. data/iso_data/base/world/kr.yml +33 -0
  262. data/iso_data/base/world/kw.yml +13 -0
  263. data/iso_data/base/world/kz.yml +33 -0
  264. data/iso_data/base/world/la.yml +37 -0
  265. data/iso_data/base/world/lb.yml +17 -0
  266. data/iso_data/base/world/li.yml +23 -0
  267. data/iso_data/base/world/lk.yml +19 -0
  268. data/iso_data/base/world/lk/1.yml +7 -0
  269. data/iso_data/base/world/lk/2.yml +7 -0
  270. data/iso_data/base/world/lk/3.yml +7 -0
  271. data/iso_data/base/world/lk/4.yml +11 -0
  272. data/iso_data/base/world/lk/5.yml +7 -0
  273. data/iso_data/base/world/lk/6.yml +5 -0
  274. data/iso_data/base/world/lk/7.yml +5 -0
  275. data/iso_data/base/world/lk/8.yml +5 -0
  276. data/iso_data/base/world/lk/9.yml +5 -0
  277. data/iso_data/base/world/lr.yml +27 -0
  278. data/iso_data/base/world/ls.yml +21 -0
  279. data/iso_data/base/world/lt.yml +21 -0
  280. data/iso_data/base/world/lu.yml +7 -0
  281. data/iso_data/base/world/lv.yml +239 -0
  282. data/iso_data/base/world/ly.yml +47 -0
  283. data/iso_data/base/world/ma.yml +33 -0
  284. data/iso_data/base/world/ma/01.yml +11 -0
  285. data/iso_data/base/world/ma/02.yml +5 -0
  286. data/iso_data/base/world/ma/03.yml +7 -0
  287. data/iso_data/base/world/ma/04.yml +13 -0
  288. data/iso_data/base/world/ma/05.yml +9 -0
  289. data/iso_data/base/world/ma/06.yml +11 -0
  290. data/iso_data/base/world/ma/07.yml +9 -0
  291. data/iso_data/base/world/ma/08.yml +9 -0
  292. data/iso_data/base/world/ma/09.yml +7 -0
  293. data/iso_data/base/world/ma/10.yml +5 -0
  294. data/iso_data/base/world/ma/11.yml +15 -0
  295. data/iso_data/base/world/ma/12.yml +5 -0
  296. data/iso_data/base/world/ma/13.yml +15 -0
  297. data/iso_data/base/world/ma/14.yml +11 -0
  298. data/iso_data/base/world/ma/15.yml +5 -0
  299. data/iso_data/base/world/ma/16.yml +5 -0
  300. data/iso_data/base/world/mc.yml +35 -0
  301. data/iso_data/base/world/md.yml +75 -0
  302. data/iso_data/base/world/me.yml +43 -0
  303. data/iso_data/base/world/mf.yml +1 -0
  304. data/iso_data/base/world/mg.yml +13 -0
  305. data/iso_data/base/world/mh.yml +5 -0
  306. data/iso_data/base/world/mh/l.yml +29 -0
  307. data/iso_data/base/world/mh/t.yml +21 -0
  308. data/iso_data/base/world/mk.yml +169 -0
  309. data/iso_data/base/world/ml.yml +19 -0
  310. data/iso_data/base/world/mm.yml +29 -0
  311. data/iso_data/base/world/mn.yml +45 -0
  312. data/iso_data/base/world/mo.yml +1 -0
  313. data/iso_data/base/world/mr.yml +27 -0
  314. data/iso_data/base/world/mt.yml +137 -0
  315. data/iso_data/base/world/mu.yml +35 -0
  316. data/iso_data/base/world/mv.yml +17 -0
  317. data/iso_data/base/world/mv/ce.yml +7 -0
  318. data/iso_data/base/world/mv/nc.yml +9 -0
  319. data/iso_data/base/world/mv/no.yml +9 -0
  320. data/iso_data/base/world/mv/sc.yml +5 -0
  321. data/iso_data/base/world/mv/su.yml +5 -0
  322. data/iso_data/base/world/mv/un.yml +7 -0
  323. data/iso_data/base/world/mv/us.yml +5 -0
  324. data/iso_data/base/world/mw.yml +7 -0
  325. data/iso_data/base/world/mw/c.yml +19 -0
  326. data/iso_data/base/world/mw/n.yml +15 -0
  327. data/iso_data/base/world/mw/s.yml +25 -0
  328. data/iso_data/base/world/mx.yml +65 -0
  329. data/iso_data/base/world/my.yml +33 -0
  330. data/iso_data/base/world/mz.yml +23 -0
  331. data/iso_data/base/world/na.yml +27 -0
  332. data/iso_data/base/world/ne.yml +17 -0
  333. data/iso_data/base/world/ng.yml +75 -0
  334. data/iso_data/base/world/ni.yml +35 -0
  335. data/iso_data/base/world/nl.yml +37 -0
  336. data/iso_data/base/world/no.yml +43 -0
  337. data/iso_data/base/world/np.yml +11 -0
  338. data/iso_data/base/world/np/1.yml +7 -0
  339. data/iso_data/base/world/np/2.yml +7 -0
  340. data/iso_data/base/world/np/3.yml +7 -0
  341. data/iso_data/base/world/np/4.yml +7 -0
  342. data/iso_data/base/world/np/5.yml +5 -0
  343. data/iso_data/base/world/nr.yml +29 -0
  344. data/iso_data/base/world/nz.yml +7 -0
  345. data/iso_data/base/world/nz/n.yml +19 -0
  346. data/iso_data/base/world/nz/s.yml +15 -0
  347. data/iso_data/base/world/om.yml +19 -0
  348. data/iso_data/base/world/pa.yml +25 -0
  349. data/iso_data/base/world/pe.yml +53 -0
  350. data/iso_data/base/world/pg.yml +41 -0
  351. data/iso_data/base/world/ph.yml +35 -0
  352. data/iso_data/base/world/ph/01.yml +9 -0
  353. data/iso_data/base/world/ph/02.yml +11 -0
  354. data/iso_data/base/world/ph/03.yml +15 -0
  355. data/iso_data/base/world/ph/05.yml +13 -0
  356. data/iso_data/base/world/ph/06.yml +13 -0
  357. data/iso_data/base/world/ph/07.yml +9 -0
  358. data/iso_data/base/world/ph/08.yml +13 -0
  359. data/iso_data/base/world/ph/09.yml +9 -0
  360. data/iso_data/base/world/ph/10.yml +9 -0
  361. data/iso_data/base/world/ph/11.yml +13 -0
  362. data/iso_data/base/world/ph/12.yml +7 -0
  363. data/iso_data/base/world/ph/13.yml +11 -0
  364. data/iso_data/base/world/ph/14.yml +9 -0
  365. data/iso_data/base/world/ph/15.yml +13 -0
  366. data/iso_data/base/world/ph/40.yml +11 -0
  367. data/iso_data/base/world/ph/41.yml +11 -0
  368. data/iso_data/base/world/pk.yml +17 -0
  369. data/iso_data/base/world/pl.yml +33 -0
  370. data/iso_data/base/world/ps.yml +33 -0
  371. data/iso_data/base/world/pt.yml +41 -0
  372. data/iso_data/base/world/pw.yml +33 -0
  373. data/iso_data/base/world/py.yml +37 -0
  374. data/iso_data/base/world/qa.yml +15 -0
  375. data/iso_data/base/world/ro.yml +85 -0
  376. data/iso_data/base/world/rs.yml +41 -0
  377. data/iso_data/base/world/rs/km.yml +11 -0
  378. data/iso_data/base/world/rs/vo.yml +15 -0
  379. data/iso_data/base/world/ru.yml +167 -0
  380. data/iso_data/base/world/rw.yml +11 -0
  381. data/iso_data/base/world/sa.yml +27 -0
  382. data/iso_data/base/world/sb.yml +21 -0
  383. data/iso_data/base/world/sc.yml +51 -0
  384. data/iso_data/base/world/sd.yml +35 -0
  385. data/iso_data/base/world/se.yml +43 -0
  386. data/iso_data/base/world/sg.yml +11 -0
  387. data/iso_data/base/world/sh.yml +7 -0
  388. data/iso_data/base/world/si.yml +421 -0
  389. data/iso_data/base/world/sk.yml +17 -0
  390. data/iso_data/base/world/sl.yml +9 -0
  391. data/iso_data/base/world/sm.yml +19 -0
  392. data/iso_data/base/world/sn.yml +29 -0
  393. data/iso_data/base/world/so.yml +37 -0
  394. data/iso_data/base/world/sr.yml +21 -0
  395. data/iso_data/base/world/ss.yml +21 -0
  396. data/iso_data/base/world/st.yml +5 -0
  397. data/iso_data/base/world/sv.yml +29 -0
  398. data/iso_data/base/world/sy.yml +29 -0
  399. data/iso_data/base/world/sz.yml +9 -0
  400. data/iso_data/base/world/td.yml +45 -0
  401. data/iso_data/base/world/tg.yml +11 -0
  402. data/iso_data/base/world/th.yml +155 -0
  403. data/iso_data/base/world/tj.yml +7 -0
  404. data/iso_data/base/world/tl.yml +27 -0
  405. data/iso_data/base/world/tm.yml +13 -0
  406. data/iso_data/base/world/tn.yml +49 -0
  407. data/iso_data/base/world/to.yml +11 -0
  408. data/iso_data/base/world/tr.yml +163 -0
  409. data/iso_data/base/world/tt.yml +33 -0
  410. data/iso_data/base/world/tv.yml +17 -0
  411. data/iso_data/base/world/tw.yml +47 -0
  412. data/iso_data/base/world/tz.yml +53 -0
  413. data/iso_data/base/world/ua.yml +55 -0
  414. data/iso_data/base/world/ug.yml +9 -0
  415. data/iso_data/base/world/ug/c.yml +33 -0
  416. data/iso_data/base/world/ug/e.yml +49 -0
  417. data/iso_data/base/world/ug/n.yml +43 -0
  418. data/iso_data/base/world/ug/w.yml +39 -0
  419. data/iso_data/base/world/um.yml +19 -0
  420. data/iso_data/base/world/us.yml +115 -0
  421. data/iso_data/base/world/uy.yml +39 -0
  422. data/iso_data/base/world/uz.yml +29 -0
  423. data/iso_data/base/world/vc.yml +13 -0
  424. data/iso_data/base/world/ve.yml +51 -0
  425. data/iso_data/base/world/vn.yml +129 -0
  426. data/iso_data/base/world/vu.yml +13 -0
  427. data/iso_data/base/world/ws.yml +23 -0
  428. data/iso_data/base/world/ye.yml +41 -0
  429. data/iso_data/base/world/za.yml +19 -0
  430. data/iso_data/base/world/zm.yml +19 -0
  431. data/iso_data/base/world/zw.yml +21 -0
  432. data/iso_data/overlay/world.yml +5 -0
  433. data/iso_data/overlay/world/ar.yml +3 -0
  434. data/iso_data/overlay/world/us.yml +7 -0
  435. data/lib/carmen.rb +88 -0
  436. data/lib/carmen/country.rb +58 -0
  437. data/lib/carmen/i18n.rb +105 -0
  438. data/lib/carmen/querying.rb +46 -0
  439. data/lib/carmen/region.rb +114 -0
  440. data/lib/carmen/region_collection.rb +30 -0
  441. data/lib/carmen/utils.rb +56 -0
  442. data/lib/carmen/version.rb +3 -0
  443. data/lib/carmen/world.rb +29 -0
  444. data/locale/base/en/world.yml +999 -0
  445. data/locale/base/en/world/ad.yml +18 -0
  446. data/locale/base/en/world/ae.yml +18 -0
  447. data/locale/base/en/world/af.yml +72 -0
  448. data/locale/base/en/world/ag.yml +20 -0
  449. data/locale/base/en/world/al.yml +28 -0
  450. data/locale/base/en/world/al/01.yml +11 -0
  451. data/locale/base/en/world/al/02.yml +9 -0
  452. data/locale/base/en/world/al/03.yml +13 -0
  453. data/locale/base/en/world/al/04.yml +11 -0
  454. data/locale/base/en/world/al/05.yml +11 -0
  455. data/locale/base/en/world/al/06.yml +13 -0
  456. data/locale/base/en/world/al/07.yml +11 -0
  457. data/locale/base/en/world/al/08.yml +11 -0
  458. data/locale/base/en/world/al/09.yml +11 -0
  459. data/locale/base/en/world/al/10.yml +11 -0
  460. data/locale/base/en/world/al/11.yml +9 -0
  461. data/locale/base/en/world/al/12.yml +11 -0
  462. data/locale/base/en/world/am.yml +26 -0
  463. data/locale/base/en/world/ao.yml +40 -0
  464. data/locale/base/en/world/ar.yml +50 -0
  465. data/locale/base/en/world/at.yml +22 -0
  466. data/locale/base/en/world/au.yml +20 -0
  467. data/locale/base/en/world/az.yml +144 -0
  468. data/locale/base/en/world/az/nx.yml +21 -0
  469. data/locale/base/en/world/ba.yml +10 -0
  470. data/locale/base/en/world/ba/bih.yml +25 -0
  471. data/locale/base/en/world/bb.yml +26 -0
  472. data/locale/base/en/world/bd.yml +18 -0
  473. data/locale/base/en/world/bd/1.yml +17 -0
  474. data/locale/base/en/world/bd/2.yml +27 -0
  475. data/locale/base/en/world/bd/3.yml +39 -0
  476. data/locale/base/en/world/bd/4.yml +25 -0
  477. data/locale/base/en/world/bd/5.yml +37 -0
  478. data/locale/base/en/world/bd/6.yml +13 -0
  479. data/locale/base/en/world/bd/a.yml +17 -0
  480. data/locale/base/en/world/bd/b.yml +27 -0
  481. data/locale/base/en/world/bd/c.yml +39 -0
  482. data/locale/base/en/world/bd/d.yml +25 -0
  483. data/locale/base/en/world/bd/e.yml +21 -0
  484. data/locale/base/en/world/bd/f.yml +21 -0
  485. data/locale/base/en/world/bd/g.yml +13 -0
  486. data/locale/base/en/world/be.yml +10 -0
  487. data/locale/base/en/world/be/vlg.yml +15 -0
  488. data/locale/base/en/world/be/wal.yml +15 -0
  489. data/locale/base/en/world/bf.yml +30 -0
  490. data/locale/base/en/world/bf/01.yml +17 -0
  491. data/locale/base/en/world/bf/02.yml +9 -0
  492. data/locale/base/en/world/bf/03.yml +7 -0
  493. data/locale/base/en/world/bf/04.yml +11 -0
  494. data/locale/base/en/world/bf/05.yml +11 -0
  495. data/locale/base/en/world/bf/06.yml +13 -0
  496. data/locale/base/en/world/bf/07.yml +11 -0
  497. data/locale/base/en/world/bf/08.yml +15 -0
  498. data/locale/base/en/world/bf/09.yml +11 -0
  499. data/locale/base/en/world/bf/10.yml +13 -0
  500. data/locale/base/en/world/bf/11.yml +11 -0
  501. data/locale/base/en/world/bf/12.yml +13 -0
  502. data/locale/base/en/world/bf/13.yml +13 -0
  503. data/locale/base/en/world/bg.yml +60 -0
  504. data/locale/base/en/world/bh.yml +14 -0
  505. data/locale/base/en/world/bi.yml +36 -0
  506. data/locale/base/en/world/bj.yml +28 -0
  507. data/locale/base/en/world/bl.yml +4 -0
  508. data/locale/base/en/world/bn.yml +12 -0
  509. data/locale/base/en/world/bo.yml +22 -0
  510. data/locale/base/en/world/bq.yml +10 -0
  511. data/locale/base/en/world/br.yml +60 -0
  512. data/locale/base/en/world/bs.yml +66 -0
  513. data/locale/base/en/world/bt.yml +44 -0
  514. data/locale/base/en/world/bw.yml +22 -0
  515. data/locale/base/en/world/by.yml +18 -0
  516. data/locale/base/en/world/bz.yml +16 -0
  517. data/locale/base/en/world/ca.yml +30 -0
  518. data/locale/base/en/world/cd.yml +26 -0
  519. data/locale/base/en/world/cf.yml +38 -0
  520. data/locale/base/en/world/cg.yml +26 -0
  521. data/locale/base/en/world/ch.yml +56 -0
  522. data/locale/base/en/world/ci.yml +42 -0
  523. data/locale/base/en/world/cl.yml +34 -0
  524. data/locale/base/en/world/cm.yml +24 -0
  525. data/locale/base/en/world/cn.yml +72 -0
  526. data/locale/base/en/world/co.yml +70 -0
  527. data/locale/base/en/world/cr.yml +18 -0
  528. data/locale/base/en/world/cu.yml +34 -0
  529. data/locale/base/en/world/cv.yml +8 -0
  530. data/locale/base/en/world/cv/b.yml +19 -0
  531. data/locale/base/en/world/cv/s.yml +35 -0
  532. data/locale/base/en/world/cy.yml +16 -0
  533. data/locale/base/en/world/cz.yml +32 -0
  534. data/locale/base/en/world/cz/jc.yml +19 -0
  535. data/locale/base/en/world/cz/jm.yml +19 -0
  536. data/locale/base/en/world/cz/ka.yml +11 -0
  537. data/locale/base/en/world/cz/kr.yml +15 -0
  538. data/locale/base/en/world/cz/li.yml +13 -0
  539. data/locale/base/en/world/cz/mo.yml +17 -0
  540. data/locale/base/en/world/cz/ol.yml +15 -0
  541. data/locale/base/en/world/cz/pa.yml +13 -0
  542. data/locale/base/en/world/cz/pl.yml +19 -0
  543. data/locale/base/en/world/cz/pr.yml +35 -0
  544. data/locale/base/en/world/cz/st.yml +29 -0
  545. data/locale/base/en/world/cz/us.yml +19 -0
  546. data/locale/base/en/world/cz/vy.yml +15 -0
  547. data/locale/base/en/world/cz/zl.yml +13 -0
  548. data/locale/base/en/world/de.yml +36 -0
  549. data/locale/base/en/world/dj.yml +16 -0
  550. data/locale/base/en/world/dk.yml +14 -0
  551. data/locale/base/en/world/dm.yml +24 -0
  552. data/locale/base/en/world/do.yml +64 -0
  553. data/locale/base/en/world/dz.yml +100 -0
  554. data/locale/base/en/world/ec.yml +52 -0
  555. data/locale/base/en/world/ee.yml +34 -0
  556. data/locale/base/en/world/eg.yml +60 -0
  557. data/locale/base/en/world/er.yml +16 -0
  558. data/locale/base/en/world/es.yml +42 -0
  559. data/locale/base/en/world/es/an.yml +21 -0
  560. data/locale/base/en/world/es/ar.yml +11 -0
  561. data/locale/base/en/world/es/as.yml +7 -0
  562. data/locale/base/en/world/es/cb.yml +7 -0
  563. data/locale/base/en/world/es/cl.yml +23 -0
  564. data/locale/base/en/world/es/cm.yml +15 -0
  565. data/locale/base/en/world/es/cn.yml +9 -0
  566. data/locale/base/en/world/es/ct.yml +13 -0
  567. data/locale/base/en/world/es/ex.yml +9 -0
  568. data/locale/base/en/world/es/ga.yml +13 -0
  569. data/locale/base/en/world/es/ib.yml +7 -0
  570. data/locale/base/en/world/es/mc.yml +7 -0
  571. data/locale/base/en/world/es/md.yml +7 -0
  572. data/locale/base/en/world/es/nc.yml +7 -0
  573. data/locale/base/en/world/es/pv.yml +11 -0
  574. data/locale/base/en/world/es/ri.yml +7 -0
  575. data/locale/base/en/world/es/vc.yml +11 -0
  576. data/locale/base/en/world/et.yml +26 -0
  577. data/locale/base/en/world/fi.yml +42 -0
  578. data/locale/base/en/world/fj.yml +14 -0
  579. data/locale/base/en/world/fm.yml +12 -0
  580. data/locale/base/en/world/fr.yml +74 -0
  581. data/locale/base/en/world/fr/a.yml +9 -0
  582. data/locale/base/en/world/fr/b.yml +15 -0
  583. data/locale/base/en/world/fr/c.yml +13 -0
  584. data/locale/base/en/world/fr/d.yml +13 -0
  585. data/locale/base/en/world/fr/e.yml +13 -0
  586. data/locale/base/en/world/fr/f.yml +17 -0
  587. data/locale/base/en/world/fr/g.yml +13 -0
  588. data/locale/base/en/world/fr/h.yml +9 -0
  589. data/locale/base/en/world/fr/i.yml +13 -0
  590. data/locale/base/en/world/fr/j.yml +21 -0
  591. data/locale/base/en/world/fr/k.yml +15 -0
  592. data/locale/base/en/world/fr/l.yml +11 -0
  593. data/locale/base/en/world/fr/m.yml +13 -0
  594. data/locale/base/en/world/fr/n.yml +21 -0
  595. data/locale/base/en/world/fr/o.yml +9 -0
  596. data/locale/base/en/world/fr/p.yml +11 -0
  597. data/locale/base/en/world/fr/q.yml +9 -0
  598. data/locale/base/en/world/fr/r.yml +15 -0
  599. data/locale/base/en/world/fr/s.yml +11 -0
  600. data/locale/base/en/world/fr/t.yml +13 -0
  601. data/locale/base/en/world/fr/u.yml +17 -0
  602. data/locale/base/en/world/fr/v.yml +21 -0
  603. data/locale/base/en/world/ga.yml +22 -0
  604. data/locale/base/en/world/gb.yml +478 -0
  605. data/locale/base/en/world/gd.yml +18 -0
  606. data/locale/base/en/world/ge.yml +28 -0
  607. data/locale/base/en/world/gg.yml +4 -0
  608. data/locale/base/en/world/gh.yml +24 -0
  609. data/locale/base/en/world/gl.yml +12 -0
  610. data/locale/base/en/world/gm.yml +16 -0
  611. data/locale/base/en/world/gn.yml +20 -0
  612. data/locale/base/en/world/gn/b.yml +15 -0
  613. data/locale/base/en/world/gn/d.yml +15 -0
  614. data/locale/base/en/world/gn/f.yml +13 -0
  615. data/locale/base/en/world/gn/k.yml +15 -0
  616. data/locale/base/en/world/gn/l.yml +15 -0
  617. data/locale/base/en/world/gn/m.yml +11 -0
  618. data/locale/base/en/world/gn/n.yml +17 -0
  619. data/locale/base/en/world/gq.yml +8 -0
  620. data/locale/base/en/world/gq/c.yml +13 -0
  621. data/locale/base/en/world/gq/i.yml +11 -0
  622. data/locale/base/en/world/gr.yml +32 -0
  623. data/locale/base/en/world/gr/a.yml +15 -0
  624. data/locale/base/en/world/gr/b.yml +19 -0
  625. data/locale/base/en/world/gr/c.yml +13 -0
  626. data/locale/base/en/world/gr/d.yml +11 -0
  627. data/locale/base/en/world/gr/e.yml +13 -0
  628. data/locale/base/en/world/gr/f.yml +15 -0
  629. data/locale/base/en/world/gr/g.yml +11 -0
  630. data/locale/base/en/world/gr/h.yml +15 -0
  631. data/locale/base/en/world/gr/i.yml +7 -0
  632. data/locale/base/en/world/gr/j.yml +15 -0
  633. data/locale/base/en/world/gr/k.yml +11 -0
  634. data/locale/base/en/world/gr/l.yml +9 -0
  635. data/locale/base/en/world/gr/m.yml +13 -0
  636. data/locale/base/en/world/gt.yml +48 -0
  637. data/locale/base/en/world/gw.yml +12 -0
  638. data/locale/base/en/world/gw/l.yml +9 -0
  639. data/locale/base/en/world/gw/n.yml +11 -0
  640. data/locale/base/en/world/gw/s.yml +11 -0
  641. data/locale/base/en/world/gy.yml +24 -0
  642. data/locale/base/en/world/hn.yml +40 -0
  643. data/locale/base/en/world/hr.yml +46 -0
  644. data/locale/base/en/world/ht.yml +22 -0
  645. data/locale/base/en/world/hu.yml +90 -0
  646. data/locale/base/en/world/id.yml +18 -0
  647. data/locale/base/en/world/id/ij.yml +9 -0
  648. data/locale/base/en/world/id/jw.yml +17 -0
  649. data/locale/base/en/world/id/ka.yml +13 -0
  650. data/locale/base/en/world/id/ma.yml +9 -0
  651. data/locale/base/en/world/id/ml.yml +9 -0
  652. data/locale/base/en/world/id/nu.yml +11 -0
  653. data/locale/base/en/world/id/sl.yml +17 -0
  654. data/locale/base/en/world/id/sm.yml +25 -0
  655. data/locale/base/en/world/ie.yml +12 -0
  656. data/locale/base/en/world/ie/c.yml +15 -0
  657. data/locale/base/en/world/ie/l.yml +29 -0
  658. data/locale/base/en/world/ie/m.yml +17 -0
  659. data/locale/base/en/world/ie/u.yml +11 -0
  660. data/locale/base/en/world/il.yml +16 -0
  661. data/locale/base/en/world/im.yml +4 -0
  662. data/locale/base/en/world/in.yml +74 -0
  663. data/locale/base/en/world/iq.yml +40 -0
  664. data/locale/base/en/world/ir.yml +64 -0
  665. data/locale/base/en/world/is.yml +22 -0
  666. data/locale/base/en/world/it.yml +44 -0
  667. data/locale/base/en/world/it/21.yml +21 -0
  668. data/locale/base/en/world/it/23.yml +7 -0
  669. data/locale/base/en/world/it/25.yml +29 -0
  670. data/locale/base/en/world/it/32.yml +9 -0
  671. data/locale/base/en/world/it/34.yml +19 -0
  672. data/locale/base/en/world/it/36.yml +13 -0
  673. data/locale/base/en/world/it/42.yml +13 -0
  674. data/locale/base/en/world/it/45.yml +23 -0
  675. data/locale/base/en/world/it/52.yml +25 -0
  676. data/locale/base/en/world/it/55.yml +9 -0
  677. data/locale/base/en/world/it/57.yml +15 -0
  678. data/locale/base/en/world/it/62.yml +15 -0
  679. data/locale/base/en/world/it/65.yml +13 -0
  680. data/locale/base/en/world/it/67.yml +9 -0
  681. data/locale/base/en/world/it/72.yml +15 -0
  682. data/locale/base/en/world/it/75.yml +17 -0
  683. data/locale/base/en/world/it/77.yml +9 -0
  684. data/locale/base/en/world/it/78.yml +15 -0
  685. data/locale/base/en/world/it/82.yml +23 -0
  686. data/locale/base/en/world/it/88.yml +21 -0
  687. data/locale/base/en/world/je.yml +4 -0
  688. data/locale/base/en/world/jm.yml +32 -0
  689. data/locale/base/en/world/jo.yml +28 -0
  690. data/locale/base/en/world/jp.yml +98 -0
  691. data/locale/base/en/world/ke.yml +18 -0
  692. data/locale/base/en/world/kg.yml +20 -0
  693. data/locale/base/en/world/kh.yml +52 -0
  694. data/locale/base/en/world/ki.yml +10 -0
  695. data/locale/base/en/world/km.yml +10 -0
  696. data/locale/base/en/world/kn.yml +8 -0
  697. data/locale/base/en/world/kn/k.yml +23 -0
  698. data/locale/base/en/world/kn/n.yml +15 -0
  699. data/locale/base/en/world/kp.yml +26 -0
  700. data/locale/base/en/world/kr.yml +36 -0
  701. data/locale/base/en/world/kw.yml +16 -0
  702. data/locale/base/en/world/kz.yml +36 -0
  703. data/locale/base/en/world/la.yml +40 -0
  704. data/locale/base/en/world/lb.yml +20 -0
  705. data/locale/base/en/world/li.yml +26 -0
  706. data/locale/base/en/world/lk.yml +22 -0
  707. data/locale/base/en/world/lk/1.yml +11 -0
  708. data/locale/base/en/world/lk/2.yml +11 -0
  709. data/locale/base/en/world/lk/3.yml +11 -0
  710. data/locale/base/en/world/lk/4.yml +15 -0
  711. data/locale/base/en/world/lk/5.yml +11 -0
  712. data/locale/base/en/world/lk/6.yml +9 -0
  713. data/locale/base/en/world/lk/7.yml +9 -0
  714. data/locale/base/en/world/lk/8.yml +9 -0
  715. data/locale/base/en/world/lk/9.yml +9 -0
  716. data/locale/base/en/world/lr.yml +30 -0
  717. data/locale/base/en/world/ls.yml +24 -0
  718. data/locale/base/en/world/lt.yml +24 -0
  719. data/locale/base/en/world/lu.yml +10 -0
  720. data/locale/base/en/world/lv.yml +242 -0
  721. data/locale/base/en/world/ly.yml +50 -0
  722. data/locale/base/en/world/ma.yml +36 -0
  723. data/locale/base/en/world/ma/01.yml +15 -0
  724. data/locale/base/en/world/ma/02.yml +9 -0
  725. data/locale/base/en/world/ma/03.yml +11 -0
  726. data/locale/base/en/world/ma/04.yml +17 -0
  727. data/locale/base/en/world/ma/05.yml +13 -0
  728. data/locale/base/en/world/ma/06.yml +15 -0
  729. data/locale/base/en/world/ma/07.yml +13 -0
  730. data/locale/base/en/world/ma/08.yml +13 -0
  731. data/locale/base/en/world/ma/09.yml +11 -0
  732. data/locale/base/en/world/ma/10.yml +9 -0
  733. data/locale/base/en/world/ma/11.yml +19 -0
  734. data/locale/base/en/world/ma/12.yml +9 -0
  735. data/locale/base/en/world/ma/13.yml +19 -0
  736. data/locale/base/en/world/ma/14.yml +15 -0
  737. data/locale/base/en/world/ma/15.yml +9 -0
  738. data/locale/base/en/world/ma/16.yml +9 -0
  739. data/locale/base/en/world/mc.yml +38 -0
  740. data/locale/base/en/world/md.yml +78 -0
  741. data/locale/base/en/world/me.yml +46 -0
  742. data/locale/base/en/world/mf.yml +4 -0
  743. data/locale/base/en/world/mg.yml +16 -0
  744. data/locale/base/en/world/mh.yml +8 -0
  745. data/locale/base/en/world/mh/l.yml +33 -0
  746. data/locale/base/en/world/mh/t.yml +25 -0
  747. data/locale/base/en/world/mk.yml +172 -0
  748. data/locale/base/en/world/ml.yml +22 -0
  749. data/locale/base/en/world/mm.yml +32 -0
  750. data/locale/base/en/world/mn.yml +48 -0
  751. data/locale/base/en/world/mo.yml +4 -0
  752. data/locale/base/en/world/mr.yml +30 -0
  753. data/locale/base/en/world/mt.yml +140 -0
  754. data/locale/base/en/world/mu.yml +38 -0
  755. data/locale/base/en/world/mv.yml +20 -0
  756. data/locale/base/en/world/mv/ce.yml +11 -0
  757. data/locale/base/en/world/mv/nc.yml +13 -0
  758. data/locale/base/en/world/mv/no.yml +13 -0
  759. data/locale/base/en/world/mv/sc.yml +9 -0
  760. data/locale/base/en/world/mv/su.yml +9 -0
  761. data/locale/base/en/world/mv/un.yml +11 -0
  762. data/locale/base/en/world/mv/us.yml +9 -0
  763. data/locale/base/en/world/mw.yml +10 -0
  764. data/locale/base/en/world/mw/c.yml +23 -0
  765. data/locale/base/en/world/mw/n.yml +19 -0
  766. data/locale/base/en/world/mw/s.yml +29 -0
  767. data/locale/base/en/world/mx.yml +68 -0
  768. data/locale/base/en/world/my.yml +36 -0
  769. data/locale/base/en/world/mz.yml +26 -0
  770. data/locale/base/en/world/na.yml +30 -0
  771. data/locale/base/en/world/ne.yml +20 -0
  772. data/locale/base/en/world/ng.yml +78 -0
  773. data/locale/base/en/world/ni.yml +38 -0
  774. data/locale/base/en/world/nl.yml +40 -0
  775. data/locale/base/en/world/no.yml +46 -0
  776. data/locale/base/en/world/np.yml +14 -0
  777. data/locale/base/en/world/np/1.yml +11 -0
  778. data/locale/base/en/world/np/2.yml +11 -0
  779. data/locale/base/en/world/np/3.yml +11 -0
  780. data/locale/base/en/world/np/4.yml +11 -0
  781. data/locale/base/en/world/np/5.yml +9 -0
  782. data/locale/base/en/world/nr.yml +32 -0
  783. data/locale/base/en/world/nz.yml +10 -0
  784. data/locale/base/en/world/nz/n.yml +23 -0
  785. data/locale/base/en/world/nz/s.yml +19 -0
  786. data/locale/base/en/world/om.yml +22 -0
  787. data/locale/base/en/world/pa.yml +28 -0
  788. data/locale/base/en/world/pe.yml +56 -0
  789. data/locale/base/en/world/pg.yml +44 -0
  790. data/locale/base/en/world/ph.yml +38 -0
  791. data/locale/base/en/world/ph/01.yml +13 -0
  792. data/locale/base/en/world/ph/02.yml +15 -0
  793. data/locale/base/en/world/ph/03.yml +19 -0
  794. data/locale/base/en/world/ph/05.yml +17 -0
  795. data/locale/base/en/world/ph/06.yml +17 -0
  796. data/locale/base/en/world/ph/07.yml +13 -0
  797. data/locale/base/en/world/ph/08.yml +17 -0
  798. data/locale/base/en/world/ph/09.yml +13 -0
  799. data/locale/base/en/world/ph/10.yml +13 -0
  800. data/locale/base/en/world/ph/11.yml +17 -0
  801. data/locale/base/en/world/ph/12.yml +11 -0
  802. data/locale/base/en/world/ph/13.yml +15 -0
  803. data/locale/base/en/world/ph/14.yml +13 -0
  804. data/locale/base/en/world/ph/15.yml +17 -0
  805. data/locale/base/en/world/ph/40.yml +15 -0
  806. data/locale/base/en/world/ph/41.yml +15 -0
  807. data/locale/base/en/world/pk.yml +20 -0
  808. data/locale/base/en/world/pl.yml +36 -0
  809. data/locale/base/en/world/ps.yml +36 -0
  810. data/locale/base/en/world/pt.yml +44 -0
  811. data/locale/base/en/world/pw.yml +36 -0
  812. data/locale/base/en/world/py.yml +40 -0
  813. data/locale/base/en/world/qa.yml +18 -0
  814. data/locale/base/en/world/ro.yml +88 -0
  815. data/locale/base/en/world/rs.yml +44 -0
  816. data/locale/base/en/world/rs/km.yml +15 -0
  817. data/locale/base/en/world/rs/vo.yml +19 -0
  818. data/locale/base/en/world/ru.yml +170 -0
  819. data/locale/base/en/world/rw.yml +14 -0
  820. data/locale/base/en/world/sa.yml +30 -0
  821. data/locale/base/en/world/sb.yml +24 -0
  822. data/locale/base/en/world/sc.yml +54 -0
  823. data/locale/base/en/world/sd.yml +38 -0
  824. data/locale/base/en/world/se.yml +46 -0
  825. data/locale/base/en/world/sg.yml +14 -0
  826. data/locale/base/en/world/sh.yml +10 -0
  827. data/locale/base/en/world/si.yml +424 -0
  828. data/locale/base/en/world/sk.yml +20 -0
  829. data/locale/base/en/world/sl.yml +12 -0
  830. data/locale/base/en/world/sm.yml +22 -0
  831. data/locale/base/en/world/sn.yml +32 -0
  832. data/locale/base/en/world/so.yml +40 -0
  833. data/locale/base/en/world/sr.yml +24 -0
  834. data/locale/base/en/world/ss.yml +24 -0
  835. data/locale/base/en/world/st.yml +8 -0
  836. data/locale/base/en/world/sv.yml +32 -0
  837. data/locale/base/en/world/sy.yml +32 -0
  838. data/locale/base/en/world/sz.yml +12 -0
  839. data/locale/base/en/world/td.yml +48 -0
  840. data/locale/base/en/world/tg.yml +14 -0
  841. data/locale/base/en/world/th.yml +158 -0
  842. data/locale/base/en/world/tj.yml +10 -0
  843. data/locale/base/en/world/tl.yml +30 -0
  844. data/locale/base/en/world/tm.yml +16 -0
  845. data/locale/base/en/world/tn.yml +52 -0
  846. data/locale/base/en/world/to.yml +14 -0
  847. data/locale/base/en/world/tr.yml +166 -0
  848. data/locale/base/en/world/tt.yml +36 -0
  849. data/locale/base/en/world/tv.yml +20 -0
  850. data/locale/base/en/world/tw.yml +50 -0
  851. data/locale/base/en/world/tz.yml +56 -0
  852. data/locale/base/en/world/ua.yml +58 -0
  853. data/locale/base/en/world/ug.yml +12 -0
  854. data/locale/base/en/world/ug/c.yml +37 -0
  855. data/locale/base/en/world/ug/e.yml +53 -0
  856. data/locale/base/en/world/ug/n.yml +47 -0
  857. data/locale/base/en/world/ug/w.yml +43 -0
  858. data/locale/base/en/world/um.yml +22 -0
  859. data/locale/base/en/world/us.yml +118 -0
  860. data/locale/base/en/world/uy.yml +42 -0
  861. data/locale/base/en/world/uz.yml +32 -0
  862. data/locale/base/en/world/vc.yml +16 -0
  863. data/locale/base/en/world/ve.yml +54 -0
  864. data/locale/base/en/world/vn.yml +132 -0
  865. data/locale/base/en/world/vu.yml +16 -0
  866. data/locale/base/en/world/ws.yml +26 -0
  867. data/locale/base/en/world/ye.yml +44 -0
  868. data/locale/base/en/world/za.yml +22 -0
  869. data/locale/base/en/world/zm.yml +22 -0
  870. data/locale/base/en/world/zw.yml +24 -0
  871. data/locale/overlay/cn/world.yml +963 -0
  872. data/locale/overlay/cs/world.yml +983 -0
  873. data/locale/overlay/de/world.yml +1067 -0
  874. data/locale/overlay/en/world.yml +12 -0
  875. data/locale/overlay/en/world/ar.yml +6 -0
  876. data/locale/overlay/en/world/es/pv.yml +7 -0
  877. data/locale/overlay/en/world/fr.yml +8 -0
  878. data/locale/overlay/en/world/us.yml +10 -0
  879. data/locale/overlay/es/world.yml +1003 -0
  880. data/locale/overlay/fi/world.yml +1015 -0
  881. data/locale/overlay/fr/world.yml +999 -0
  882. data/locale/overlay/fr/world/ca.yml +30 -0
  883. data/locale/overlay/hi/world.yml +983 -0
  884. data/locale/overlay/it/world.yml +955 -0
  885. data/locale/overlay/jp/world.yml +983 -0
  886. data/locale/overlay/ko/world.yml +955 -0
  887. data/locale/overlay/nl/world.yml +1019 -0
  888. data/locale/overlay/pl/world.yml +983 -0
  889. data/locale/overlay/pt/world.yml +1015 -0
  890. data/locale/overlay/ru/world.yml +1015 -0
  891. data/locale/overlay/ru/world/ru.yml +170 -0
  892. data/locale/overlay/sk/world.yml +983 -0
  893. data/locale/overlay/sv/world.yml +1043 -0
  894. data/locale/overlay/tr/world.yml +955 -0
  895. metadata +1005 -0
@@ -0,0 +1,105 @@
1
+ require 'yaml'
2
+ require 'carmen/utils'
3
+
4
+ module Carmen
5
+ module I18n
6
+
7
+ # A simple object to handle I18n translation in simple situations.
8
+ class Simple
9
+
10
+ DEFAULT_LOCALE = 'en'
11
+
12
+ attr_accessor :cache
13
+ attr_reader :fallback_locale
14
+ attr_reader :locale_paths
15
+
16
+ def initialize(*initial_locale_paths)
17
+ self.locale = DEFAULT_LOCALE
18
+ @fallback_locale = DEFAULT_LOCALE
19
+ @locale_paths = []
20
+ initial_locale_paths.each do |path|
21
+ append_locale_path(path)
22
+ end
23
+ end
24
+
25
+ def append_locale_path(path)
26
+ reset!
27
+ @locale_paths << Pathname.new(path)
28
+ end
29
+
30
+ # Set a new locale
31
+ #
32
+ # Calling this method will clear the cache.
33
+ def locale=(locale)
34
+ Thread.current[:carmen_locale] = locale.to_s
35
+ end
36
+
37
+ def locale
38
+ Thread.current[:carmen_locale]
39
+ end
40
+
41
+ # Retrieve a translation for a key in the following format: 'a.b.c'
42
+ #
43
+ # This will attempt to find the key in the current locale, and if nothing
44
+ # is found, a value found in the fallback locale will be used instead.
45
+ def translate(key)
46
+ read(key.to_s)
47
+ end
48
+
49
+ alias :t :translate
50
+
51
+ # Clear the cache. Should be called after appending a new locale path
52
+ # manually (in case lookups have already occurred.)
53
+ #
54
+ # When adding a locale path, it's best to use #append_locale_path, which
55
+ # resets the cache automatically.
56
+ def reset!
57
+ @cache = nil
58
+ end
59
+
60
+ def inspect
61
+ "<##{self.class} locale=#{self.locale}>"
62
+ end
63
+
64
+ def available_locales
65
+ load_cache_if_needed
66
+ @cache.keys.sort
67
+ end
68
+
69
+ private
70
+
71
+ def read(key)
72
+ load_cache_if_needed
73
+ translated = read_from_hash(key, @cache[self.locale])
74
+ translated ||= read_from_hash(key, @cache[@fallback_locale]) if self.locale != @fallback_locale
75
+ translated
76
+ end
77
+
78
+ def read_from_hash(key, source_hash)
79
+ key.split('.').inject(source_hash) { |hash, key|
80
+ hash[key] unless hash.nil?
81
+ }
82
+ end
83
+
84
+ # Load all files located in @locale_paths, merge them, and store the result
85
+ # in @cache.
86
+ def load_cache_if_needed
87
+ return unless @cache.nil?
88
+ hashes = load_hashes_for_paths(@locale_paths)
89
+ @cache = Utils.deep_hash_merge(hashes)
90
+ end
91
+
92
+ def load_hashes_for_paths(paths)
93
+ paths.collect { |path|
94
+ if !File.exist?(path)
95
+ fail "Path #{path} not found when loading locale files"
96
+ end
97
+ Dir[path + '**/*.yml'].map { |file_path|
98
+ YAML.load_file(file_path)
99
+ }
100
+ }.flatten
101
+ end
102
+
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,46 @@
1
+ require 'active_support/core_ext/string'
2
+
3
+ module Carmen
4
+ module Querying
5
+ # Find a region by code.
6
+ #
7
+ # code - The String code to search for
8
+ #
9
+ # Returns a region with the supplied code, or nil if none is found.
10
+ def coded(code)
11
+ return nil if code.nil?
12
+ attribute = attribute_to_search_for_code(code)
13
+ if attribute.nil?
14
+ fail "could not find an attribute to search for code '#{code}'"
15
+ end
16
+ code = code.downcase # Codes are all ASCII
17
+ query_collection.find do |region|
18
+ region.send(attribute).downcase == code
19
+ end
20
+ end
21
+
22
+ # Find a region by name.
23
+ #
24
+ # name - The String name to search for.
25
+ # options - The Hash options used to modify the search (default:{}):
26
+ # :fuzzy - Whether to use fuzzy matching when finding a
27
+ # matching name (optional, default: false)
28
+ # :case - Whether or not the match is case-sensitive
29
+ # (optional, default: false)
30
+ #
31
+ # Returns a region with the supplied name, or nil if none if found.
32
+ def named(name, options={})
33
+ case_fold = !options[:case] && name.respond_to?(:each_codepoint)
34
+ # These only need to be built once
35
+ name = case_fold ? name.mb_chars.downcase.normalize : name
36
+ # For now, "fuzzy" just means substring, optionally case-insensitive (the second argument looks for nil, not falseness)
37
+ regexp = options[:fuzzy] ? Regexp.new(name, options[:case] ? nil : true) : nil
38
+
39
+ query_collection.find do |region|
40
+ found_literal = name === (case_fold && region.name ? region.name.mb_chars.downcase.normalize : region.name)
41
+ found_literal || options[:fuzzy] && regexp === region.name
42
+ end
43
+ end
44
+
45
+ end
46
+ end
@@ -0,0 +1,114 @@
1
+ require 'yaml'
2
+
3
+ require 'carmen/region_collection'
4
+ require 'carmen/utils'
5
+
6
+ module Carmen
7
+ class Region
8
+
9
+ attr_reader :type
10
+ attr_reader :code
11
+ attr_reader :parent
12
+
13
+ def initialize(data={}, parent=nil)
14
+ @type = data['type']
15
+ @code = data['code']
16
+ @parent = parent
17
+ end
18
+
19
+ def name
20
+ Carmen.i18n_backend.translate(path('name'))
21
+ end
22
+
23
+ def subregions
24
+ @subregions ||= load_subregions
25
+ end
26
+
27
+ def subregions?
28
+ !subregions.empty?
29
+ end
30
+
31
+ def subregion_data_path
32
+ @parent.subregion_data_path.sub('.yml', "/#{subregion_directory}.yml")
33
+ end
34
+
35
+ def subregion_class
36
+ Region
37
+ end
38
+
39
+ # Return a path string for this region. Useful for use with I18n.
40
+ #
41
+ # Returns a string in the format "world.$PARENT_CODE.$REGION_CODE", such as
42
+ # "world.us.il". The number of segments is the depth of the region plus one.
43
+ def path(suffix=nil)
44
+ base = "#{parent.path}.#{subregion_directory}"
45
+ base << ".#{suffix.to_s}" if suffix
46
+ base
47
+ end
48
+
49
+ def inspect
50
+ "<##{self.class} name=\"#{name}\" type=\"#{type}\">"
51
+ end
52
+
53
+ def to_s
54
+ name
55
+ end
56
+
57
+ # Clears the subregion cache
58
+ def reset!
59
+ @subregions = nil
60
+ end
61
+
62
+ def <=>(other)
63
+ name <=> other.name
64
+ end
65
+
66
+ private
67
+
68
+ def subregion_directory
69
+ code.downcase
70
+ end
71
+
72
+ def load_subregions
73
+ if Carmen.data_paths.any? {|path| (path + subregion_data_path).exist? }
74
+ load_subregions_from_path(subregion_data_path, self)
75
+ else
76
+ []
77
+ end
78
+ end
79
+
80
+ def load_subregions_from_path(path, parent=nil)
81
+ regions = load_data_at_path(path).collect do |data|
82
+ subregion_class.new(data, parent)
83
+ end
84
+ RegionCollection.new(regions)
85
+ end
86
+
87
+ # Load the data for a path.
88
+ #
89
+ # The resulting data will be the result of loading the file from the data_path
90
+ # and overlaying matching data (if it exists) from the overlay_path.
91
+ def load_data_at_path(path)
92
+ data_sets = Carmen.data_paths.map do |data_path|
93
+ if File.exists?(data_path + path)
94
+ YAML.load_file(data_path + path)
95
+ else
96
+ []
97
+ end
98
+ end
99
+ flatten_data(data_sets)
100
+ end
101
+
102
+ # Merge multiple arrays of hashes together
103
+ #
104
+ # Use either 'code' or 'alpha_2_code' to match elements between the sets.
105
+ #
106
+ # Returns a single merged array of hashes.
107
+ def flatten_data(arrays)
108
+ keys = %w(code alpha_2_code)
109
+ Utils.merge_arrays_by_keys(arrays, keys).reject do |hash|
110
+ hash['_enabled'] == false
111
+ end
112
+ end
113
+ end
114
+ end
@@ -0,0 +1,30 @@
1
+ require 'carmen/querying'
2
+
3
+ module Carmen
4
+ # RegionCollection is responsible for holding the subregions for a
5
+ # region and also provides an interface to query said subregions.
6
+ #
7
+ # Example:
8
+ #
9
+ # states = Carmen::Country.coded('US').subregions
10
+ # => #<RegionCollection>
11
+ # states.size
12
+ # => 5
13
+ # states.named('Illinois')
14
+ # => #<Region name:"Illinois" code: "IL">
15
+ #
16
+ class RegionCollection < Array
17
+ include Querying
18
+
19
+ private
20
+
21
+ def query_collection
22
+ self
23
+ end
24
+
25
+ def attribute_to_search_for_code(code)
26
+ :code
27
+ end
28
+
29
+ end
30
+ end
@@ -0,0 +1,56 @@
1
+ module Carmen
2
+ module Utils
3
+ # Merge an array of hashes deeply.
4
+ #
5
+ # When a conflict occurs:
6
+ # - if both the old value and the new value respond_to? :merge, they
7
+ # are recursively passed to deep_merge_hash and the result used.
8
+ # - if either doesn't respond_to? :merge, then the new value is used if
9
+ # it is not nil. If the new value is nil, the old value is used.
10
+ #
11
+ # Returns a merged hash.
12
+ def self.deep_hash_merge(hashes)
13
+ return hashes.first if hashes.size == 1
14
+
15
+ hashes.inject { |acc, hash|
16
+ acc.merge(hash) { |key, old_value, new_value|
17
+ if old_value.respond_to?(:merge) && new_value.respond_to?(:merge)
18
+ deep_hash_merge([old_value, new_value])
19
+ else
20
+ new_value || old_value
21
+ end
22
+ }
23
+ }
24
+ end
25
+
26
+ # Merge arrays of hashes using the specified keys.
27
+ #
28
+ # If two hashes have the same value for a key, they are merged together.
29
+ # Otherwise, a new hash is appended to the array.
30
+ #
31
+ # Matching arrays uses the keys in the order they are provided.
32
+ #
33
+ # Returns a single merges array of hashes.
34
+ def self.merge_arrays_by_keys(arrays, keys)
35
+ arrays.inject do |aggregate, array|
36
+
37
+ array.each do |new_hash|
38
+ # Find the matching element in the agregate array
39
+ existing = aggregate.find do |hash|
40
+ keys.any? {|key| hash[key] && hash[key] == new_hash[key] }
41
+ end
42
+
43
+ # Merge the new hash to an existing one, or append it if new
44
+ if existing
45
+ existing.merge!(new_hash)
46
+ else
47
+ aggregate << new_hash
48
+ end
49
+ end
50
+
51
+ aggregate
52
+ end
53
+
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,3 @@
1
+ module Carmen
2
+ VERSION = '1.0.1'
3
+ end
@@ -0,0 +1,29 @@
1
+ require 'singleton'
2
+
3
+ require 'carmen/region'
4
+
5
+ module Carmen
6
+ class World < Region
7
+ include Singleton
8
+
9
+ def type; 'world'; end
10
+ def name; 'Earth'; end
11
+
12
+ def subregion_data_path
13
+ 'world.yml'
14
+ end
15
+
16
+ def subregion_class
17
+ Country
18
+ end
19
+
20
+ def path
21
+ 'world'
22
+ end
23
+
24
+ def inspect
25
+ "<##{self.class}>"
26
+ end
27
+
28
+ end
29
+ end
@@ -0,0 +1,999 @@
1
+ ---
2
+ en:
3
+ world:
4
+ ad:
5
+ common_name:
6
+ name: Andorra
7
+ official_name: Principality of Andorra
8
+ ae:
9
+ common_name:
10
+ name: United Arab Emirates
11
+ official_name:
12
+ af:
13
+ common_name:
14
+ name: Afghanistan
15
+ official_name: Islamic Republic of Afghanistan
16
+ ag:
17
+ common_name:
18
+ name: Antigua and Barbuda
19
+ official_name:
20
+ ai:
21
+ common_name:
22
+ name: Anguilla
23
+ official_name:
24
+ al:
25
+ common_name:
26
+ name: Albania
27
+ official_name: Republic of Albania
28
+ am:
29
+ common_name:
30
+ name: Armenia
31
+ official_name: Republic of Armenia
32
+ ao:
33
+ common_name:
34
+ name: Angola
35
+ official_name: Republic of Angola
36
+ aq:
37
+ common_name:
38
+ name: Antarctica
39
+ official_name:
40
+ ar:
41
+ common_name:
42
+ name: Argentina
43
+ official_name: Argentine Republic
44
+ as:
45
+ common_name:
46
+ name: American Samoa
47
+ official_name:
48
+ at:
49
+ common_name:
50
+ name: Austria
51
+ official_name: Republic of Austria
52
+ au:
53
+ common_name:
54
+ name: Australia
55
+ official_name:
56
+ aw:
57
+ common_name:
58
+ name: Aruba
59
+ official_name:
60
+ ax:
61
+ common_name:
62
+ name: "Åland Islands"
63
+ official_name:
64
+ az:
65
+ common_name:
66
+ name: Azerbaijan
67
+ official_name: Republic of Azerbaijan
68
+ ba:
69
+ common_name:
70
+ name: Bosnia and Herzegovina
71
+ official_name: Republic of Bosnia and Herzegovina
72
+ bb:
73
+ common_name:
74
+ name: Barbados
75
+ official_name:
76
+ bd:
77
+ common_name:
78
+ name: Bangladesh
79
+ official_name: People's Republic of Bangladesh
80
+ be:
81
+ common_name:
82
+ name: Belgium
83
+ official_name: Kingdom of Belgium
84
+ bf:
85
+ common_name:
86
+ name: Burkina Faso
87
+ official_name:
88
+ bg:
89
+ common_name:
90
+ name: Bulgaria
91
+ official_name: Republic of Bulgaria
92
+ bh:
93
+ common_name:
94
+ name: Bahrain
95
+ official_name: Kingdom of Bahrain
96
+ bi:
97
+ common_name:
98
+ name: Burundi
99
+ official_name: Republic of Burundi
100
+ bj:
101
+ common_name:
102
+ name: Benin
103
+ official_name: Republic of Benin
104
+ bl:
105
+ common_name:
106
+ name: Saint Barthélemy
107
+ official_name:
108
+ bm:
109
+ common_name:
110
+ name: Bermuda
111
+ official_name:
112
+ bn:
113
+ common_name:
114
+ name: Brunei Darussalam
115
+ official_name:
116
+ bo:
117
+ common_name: Bolivia
118
+ name: Bolivia, Plurinational State of
119
+ official_name: Plurinational State of Bolivia
120
+ bq:
121
+ common_name:
122
+ name: Bonaire, Sint Eustatius and Saba
123
+ official_name: Bonaire, Sint Eustatius and Saba
124
+ br:
125
+ common_name:
126
+ name: Brazil
127
+ official_name: Federative Republic of Brazil
128
+ bs:
129
+ common_name:
130
+ name: Bahamas
131
+ official_name: Commonwealth of the Bahamas
132
+ bt:
133
+ common_name:
134
+ name: Bhutan
135
+ official_name: Kingdom of Bhutan
136
+ bv:
137
+ common_name:
138
+ name: Bouvet Island
139
+ official_name:
140
+ bw:
141
+ common_name:
142
+ name: Botswana
143
+ official_name: Republic of Botswana
144
+ by:
145
+ common_name:
146
+ name: Belarus
147
+ official_name: Republic of Belarus
148
+ bz:
149
+ common_name:
150
+ name: Belize
151
+ official_name:
152
+ ca:
153
+ common_name:
154
+ name: Canada
155
+ official_name:
156
+ cc:
157
+ common_name:
158
+ name: Cocos (Keeling) Islands
159
+ official_name:
160
+ cd:
161
+ common_name:
162
+ name: Congo, The Democratic Republic of the
163
+ official_name:
164
+ cf:
165
+ common_name:
166
+ name: Central African Republic
167
+ official_name:
168
+ cg:
169
+ common_name:
170
+ name: Congo
171
+ official_name: Republic of the Congo
172
+ ch:
173
+ common_name:
174
+ name: Switzerland
175
+ official_name: Swiss Confederation
176
+ ci:
177
+ common_name:
178
+ name: Côte d'Ivoire
179
+ official_name: Republic of Côte d'Ivoire
180
+ ck:
181
+ common_name:
182
+ name: Cook Islands
183
+ official_name:
184
+ cl:
185
+ common_name:
186
+ name: Chile
187
+ official_name: Republic of Chile
188
+ cm:
189
+ common_name:
190
+ name: Cameroon
191
+ official_name: Republic of Cameroon
192
+ cn:
193
+ common_name:
194
+ name: China
195
+ official_name: People's Republic of China
196
+ co:
197
+ common_name:
198
+ name: Colombia
199
+ official_name: Republic of Colombia
200
+ cr:
201
+ common_name:
202
+ name: Costa Rica
203
+ official_name: Republic of Costa Rica
204
+ cu:
205
+ common_name:
206
+ name: Cuba
207
+ official_name: Republic of Cuba
208
+ cv:
209
+ common_name:
210
+ name: Cape Verde
211
+ official_name: Republic of Cape Verde
212
+ cw:
213
+ common_name:
214
+ name: Curaçao
215
+ official_name: Curaçao
216
+ cx:
217
+ common_name:
218
+ name: Christmas Island
219
+ official_name:
220
+ cy:
221
+ common_name:
222
+ name: Cyprus
223
+ official_name: Republic of Cyprus
224
+ cz:
225
+ common_name:
226
+ name: Czech Republic
227
+ official_name:
228
+ de:
229
+ common_name:
230
+ name: Germany
231
+ official_name: Federal Republic of Germany
232
+ dj:
233
+ common_name:
234
+ name: Djibouti
235
+ official_name: Republic of Djibouti
236
+ dk:
237
+ common_name:
238
+ name: Denmark
239
+ official_name: Kingdom of Denmark
240
+ dm:
241
+ common_name:
242
+ name: Dominica
243
+ official_name: Commonwealth of Dominica
244
+ do:
245
+ common_name:
246
+ name: Dominican Republic
247
+ official_name:
248
+ dz:
249
+ common_name:
250
+ name: Algeria
251
+ official_name: People's Democratic Republic of Algeria
252
+ ec:
253
+ common_name:
254
+ name: Ecuador
255
+ official_name: Republic of Ecuador
256
+ ee:
257
+ common_name:
258
+ name: Estonia
259
+ official_name: Republic of Estonia
260
+ eg:
261
+ common_name:
262
+ name: Egypt
263
+ official_name: Arab Republic of Egypt
264
+ eh:
265
+ common_name:
266
+ name: Western Sahara
267
+ official_name:
268
+ er:
269
+ common_name:
270
+ name: Eritrea
271
+ official_name: the State of Eritrea
272
+ es:
273
+ common_name:
274
+ name: Spain
275
+ official_name: Kingdom of Spain
276
+ et:
277
+ common_name:
278
+ name: Ethiopia
279
+ official_name: Federal Democratic Republic of Ethiopia
280
+ fi:
281
+ common_name:
282
+ name: Finland
283
+ official_name: Republic of Finland
284
+ fj:
285
+ common_name:
286
+ name: Fiji
287
+ official_name: Republic of Fiji
288
+ fk:
289
+ common_name:
290
+ name: Falkland Islands (Malvinas)
291
+ official_name:
292
+ fm:
293
+ common_name:
294
+ name: Micronesia, Federated States of
295
+ official_name: Federated States of Micronesia
296
+ fo:
297
+ common_name:
298
+ name: Faroe Islands
299
+ official_name:
300
+ fr:
301
+ common_name:
302
+ name: France
303
+ official_name: French Republic
304
+ ga:
305
+ common_name:
306
+ name: Gabon
307
+ official_name: Gabonese Republic
308
+ gb:
309
+ common_name:
310
+ name: United Kingdom
311
+ official_name: United Kingdom of Great Britain and Northern Ireland
312
+ gd:
313
+ common_name:
314
+ name: Grenada
315
+ official_name:
316
+ ge:
317
+ common_name:
318
+ name: Georgia
319
+ official_name:
320
+ gf:
321
+ common_name:
322
+ name: French Guiana
323
+ official_name:
324
+ gg:
325
+ common_name:
326
+ name: Guernsey
327
+ official_name:
328
+ gh:
329
+ common_name:
330
+ name: Ghana
331
+ official_name: Republic of Ghana
332
+ gi:
333
+ common_name:
334
+ name: Gibraltar
335
+ official_name:
336
+ gl:
337
+ common_name:
338
+ name: Greenland
339
+ official_name:
340
+ gm:
341
+ common_name:
342
+ name: Gambia
343
+ official_name: Republic of the Gambia
344
+ gn:
345
+ common_name:
346
+ name: Guinea
347
+ official_name: Republic of Guinea
348
+ gp:
349
+ common_name:
350
+ name: Guadeloupe
351
+ official_name:
352
+ gq:
353
+ common_name:
354
+ name: Equatorial Guinea
355
+ official_name: Republic of Equatorial Guinea
356
+ gr:
357
+ common_name:
358
+ name: Greece
359
+ official_name: Hellenic Republic
360
+ gs:
361
+ common_name:
362
+ name: South Georgia and the South Sandwich Islands
363
+ official_name:
364
+ gt:
365
+ common_name:
366
+ name: Guatemala
367
+ official_name: Republic of Guatemala
368
+ gu:
369
+ common_name:
370
+ name: Guam
371
+ official_name:
372
+ gw:
373
+ common_name:
374
+ name: Guinea-Bissau
375
+ official_name: Republic of Guinea-Bissau
376
+ gy:
377
+ common_name:
378
+ name: Guyana
379
+ official_name: Republic of Guyana
380
+ hk:
381
+ common_name:
382
+ name: Hong Kong
383
+ official_name: Hong Kong Special Administrative Region of China
384
+ hm:
385
+ common_name:
386
+ name: Heard Island and McDonald Islands
387
+ official_name:
388
+ hn:
389
+ common_name:
390
+ name: Honduras
391
+ official_name: Republic of Honduras
392
+ hr:
393
+ common_name:
394
+ name: Croatia
395
+ official_name: Republic of Croatia
396
+ ht:
397
+ common_name:
398
+ name: Haiti
399
+ official_name: Republic of Haiti
400
+ hu:
401
+ common_name:
402
+ name: Hungary
403
+ official_name: Hungary
404
+ id:
405
+ common_name:
406
+ name: Indonesia
407
+ official_name: Republic of Indonesia
408
+ ie:
409
+ common_name:
410
+ name: Ireland
411
+ official_name:
412
+ il:
413
+ common_name:
414
+ name: Israel
415
+ official_name: State of Israel
416
+ im:
417
+ common_name:
418
+ name: Isle of Man
419
+ official_name:
420
+ in:
421
+ common_name:
422
+ name: India
423
+ official_name: Republic of India
424
+ io:
425
+ common_name:
426
+ name: British Indian Ocean Territory
427
+ official_name:
428
+ iq:
429
+ common_name:
430
+ name: Iraq
431
+ official_name: Republic of Iraq
432
+ ir:
433
+ common_name:
434
+ name: Iran, Islamic Republic of
435
+ official_name: Islamic Republic of Iran
436
+ is:
437
+ common_name:
438
+ name: Iceland
439
+ official_name: Republic of Iceland
440
+ it:
441
+ common_name:
442
+ name: Italy
443
+ official_name: Italian Republic
444
+ je:
445
+ common_name:
446
+ name: Jersey
447
+ official_name:
448
+ jm:
449
+ common_name:
450
+ name: Jamaica
451
+ official_name:
452
+ jo:
453
+ common_name:
454
+ name: Jordan
455
+ official_name: Hashemite Kingdom of Jordan
456
+ jp:
457
+ common_name:
458
+ name: Japan
459
+ official_name:
460
+ ke:
461
+ common_name:
462
+ name: Kenya
463
+ official_name: Republic of Kenya
464
+ kg:
465
+ common_name:
466
+ name: Kyrgyzstan
467
+ official_name: Kyrgyz Republic
468
+ kh:
469
+ common_name:
470
+ name: Cambodia
471
+ official_name: Kingdom of Cambodia
472
+ ki:
473
+ common_name:
474
+ name: Kiribati
475
+ official_name: Republic of Kiribati
476
+ km:
477
+ common_name:
478
+ name: Comoros
479
+ official_name: Union of the Comoros
480
+ kn:
481
+ common_name:
482
+ name: Saint Kitts and Nevis
483
+ official_name:
484
+ kp:
485
+ common_name:
486
+ name: Korea, Democratic People's Republic of
487
+ official_name: Democratic People's Republic of Korea
488
+ kr:
489
+ common_name:
490
+ name: Korea, Republic of
491
+ official_name:
492
+ kw:
493
+ common_name:
494
+ name: Kuwait
495
+ official_name: State of Kuwait
496
+ ky:
497
+ common_name:
498
+ name: Cayman Islands
499
+ official_name:
500
+ kz:
501
+ common_name:
502
+ name: Kazakhstan
503
+ official_name: Republic of Kazakhstan
504
+ la:
505
+ common_name:
506
+ name: Lao People's Democratic Republic
507
+ official_name:
508
+ lb:
509
+ common_name:
510
+ name: Lebanon
511
+ official_name: Lebanese Republic
512
+ lc:
513
+ common_name:
514
+ name: Saint Lucia
515
+ official_name:
516
+ li:
517
+ common_name:
518
+ name: Liechtenstein
519
+ official_name: Principality of Liechtenstein
520
+ lk:
521
+ common_name:
522
+ name: Sri Lanka
523
+ official_name: Democratic Socialist Republic of Sri Lanka
524
+ lr:
525
+ common_name:
526
+ name: Liberia
527
+ official_name: Republic of Liberia
528
+ ls:
529
+ common_name:
530
+ name: Lesotho
531
+ official_name: Kingdom of Lesotho
532
+ lt:
533
+ common_name:
534
+ name: Lithuania
535
+ official_name: Republic of Lithuania
536
+ lu:
537
+ common_name:
538
+ name: Luxembourg
539
+ official_name: Grand Duchy of Luxembourg
540
+ lv:
541
+ common_name:
542
+ name: Latvia
543
+ official_name: Republic of Latvia
544
+ ly:
545
+ common_name:
546
+ name: Libya
547
+ official_name: Libya
548
+ ma:
549
+ common_name:
550
+ name: Morocco
551
+ official_name: Kingdom of Morocco
552
+ mc:
553
+ common_name:
554
+ name: Monaco
555
+ official_name: Principality of Monaco
556
+ md:
557
+ common_name: Moldova
558
+ name: Moldova, Republic of
559
+ official_name: Republic of Moldova
560
+ me:
561
+ common_name:
562
+ name: Montenegro
563
+ official_name: Montenegro
564
+ mf:
565
+ common_name:
566
+ name: Saint Martin (French part)
567
+ official_name:
568
+ mg:
569
+ common_name:
570
+ name: Madagascar
571
+ official_name: Republic of Madagascar
572
+ mh:
573
+ common_name:
574
+ name: Marshall Islands
575
+ official_name: Republic of the Marshall Islands
576
+ mk:
577
+ common_name:
578
+ name: Macedonia, Republic of
579
+ official_name: The Former Yugoslav Republic of Macedonia
580
+ ml:
581
+ common_name:
582
+ name: Mali
583
+ official_name: Republic of Mali
584
+ mm:
585
+ common_name:
586
+ name: Myanmar
587
+ official_name: Republic of Myanmar
588
+ mn:
589
+ common_name:
590
+ name: Mongolia
591
+ official_name:
592
+ mo:
593
+ common_name:
594
+ name: Macao
595
+ official_name: Macao Special Administrative Region of China
596
+ mp:
597
+ common_name:
598
+ name: Northern Mariana Islands
599
+ official_name: Commonwealth of the Northern Mariana Islands
600
+ mq:
601
+ common_name:
602
+ name: Martinique
603
+ official_name:
604
+ mr:
605
+ common_name:
606
+ name: Mauritania
607
+ official_name: Islamic Republic of Mauritania
608
+ ms:
609
+ common_name:
610
+ name: Montserrat
611
+ official_name:
612
+ mt:
613
+ common_name:
614
+ name: Malta
615
+ official_name: Republic of Malta
616
+ mu:
617
+ common_name:
618
+ name: Mauritius
619
+ official_name: Republic of Mauritius
620
+ mv:
621
+ common_name:
622
+ name: Maldives
623
+ official_name: Republic of Maldives
624
+ mw:
625
+ common_name:
626
+ name: Malawi
627
+ official_name: Republic of Malawi
628
+ mx:
629
+ common_name:
630
+ name: Mexico
631
+ official_name: United Mexican States
632
+ my:
633
+ common_name:
634
+ name: Malaysia
635
+ official_name:
636
+ mz:
637
+ common_name:
638
+ name: Mozambique
639
+ official_name: Republic of Mozambique
640
+ na:
641
+ common_name:
642
+ name: Namibia
643
+ official_name: Republic of Namibia
644
+ nc:
645
+ common_name:
646
+ name: New Caledonia
647
+ official_name:
648
+ ne:
649
+ common_name:
650
+ name: Niger
651
+ official_name: Republic of the Niger
652
+ nf:
653
+ common_name:
654
+ name: Norfolk Island
655
+ official_name:
656
+ ng:
657
+ common_name:
658
+ name: Nigeria
659
+ official_name: Federal Republic of Nigeria
660
+ ni:
661
+ common_name:
662
+ name: Nicaragua
663
+ official_name: Republic of Nicaragua
664
+ nl:
665
+ common_name:
666
+ name: Netherlands
667
+ official_name: Kingdom of the Netherlands
668
+ 'no':
669
+ common_name:
670
+ name: Norway
671
+ official_name: Kingdom of Norway
672
+ np:
673
+ common_name:
674
+ name: Nepal
675
+ official_name: Federal Democratic Republic of Nepal
676
+ nr:
677
+ common_name:
678
+ name: Nauru
679
+ official_name: Republic of Nauru
680
+ nu:
681
+ common_name:
682
+ name: Niue
683
+ official_name: Niue
684
+ nz:
685
+ common_name:
686
+ name: New Zealand
687
+ official_name:
688
+ om:
689
+ common_name:
690
+ name: Oman
691
+ official_name: Sultanate of Oman
692
+ pa:
693
+ common_name:
694
+ name: Panama
695
+ official_name: Republic of Panama
696
+ pe:
697
+ common_name:
698
+ name: Peru
699
+ official_name: Republic of Peru
700
+ pf:
701
+ common_name:
702
+ name: French Polynesia
703
+ official_name:
704
+ pg:
705
+ common_name:
706
+ name: Papua New Guinea
707
+ official_name: Independent State of Papua New Guinea
708
+ ph:
709
+ common_name:
710
+ name: Philippines
711
+ official_name: Republic of the Philippines
712
+ pk:
713
+ common_name:
714
+ name: Pakistan
715
+ official_name: Islamic Republic of Pakistan
716
+ pl:
717
+ common_name:
718
+ name: Poland
719
+ official_name: Republic of Poland
720
+ pm:
721
+ common_name:
722
+ name: Saint Pierre and Miquelon
723
+ official_name:
724
+ pn:
725
+ common_name:
726
+ name: Pitcairn
727
+ official_name:
728
+ pr:
729
+ common_name:
730
+ name: Puerto Rico
731
+ official_name:
732
+ ps:
733
+ common_name:
734
+ name: Palestine, State of
735
+ official_name: the State of Palestine
736
+ pt:
737
+ common_name:
738
+ name: Portugal
739
+ official_name: Portuguese Republic
740
+ pw:
741
+ common_name:
742
+ name: Palau
743
+ official_name: Republic of Palau
744
+ py:
745
+ common_name:
746
+ name: Paraguay
747
+ official_name: Republic of Paraguay
748
+ qa:
749
+ common_name:
750
+ name: Qatar
751
+ official_name: State of Qatar
752
+ re:
753
+ common_name:
754
+ name: Réunion
755
+ official_name:
756
+ ro:
757
+ common_name:
758
+ name: Romania
759
+ official_name:
760
+ rs:
761
+ common_name:
762
+ name: Serbia
763
+ official_name: Republic of Serbia
764
+ ru:
765
+ common_name:
766
+ name: Russian Federation
767
+ official_name:
768
+ rw:
769
+ common_name:
770
+ name: Rwanda
771
+ official_name: Rwandese Republic
772
+ sa:
773
+ common_name:
774
+ name: Saudi Arabia
775
+ official_name: Kingdom of Saudi Arabia
776
+ sb:
777
+ common_name:
778
+ name: Solomon Islands
779
+ official_name:
780
+ sc:
781
+ common_name:
782
+ name: Seychelles
783
+ official_name: Republic of Seychelles
784
+ sd:
785
+ common_name:
786
+ name: Sudan
787
+ official_name: Republic of the Sudan
788
+ se:
789
+ common_name:
790
+ name: Sweden
791
+ official_name: Kingdom of Sweden
792
+ sg:
793
+ common_name:
794
+ name: Singapore
795
+ official_name: Republic of Singapore
796
+ sh:
797
+ common_name:
798
+ name: Saint Helena, Ascension and Tristan da Cunha
799
+ official_name:
800
+ si:
801
+ common_name:
802
+ name: Slovenia
803
+ official_name: Republic of Slovenia
804
+ sj:
805
+ common_name:
806
+ name: Svalbard and Jan Mayen
807
+ official_name:
808
+ sk:
809
+ common_name:
810
+ name: Slovakia
811
+ official_name: Slovak Republic
812
+ sl:
813
+ common_name:
814
+ name: Sierra Leone
815
+ official_name: Republic of Sierra Leone
816
+ sm:
817
+ common_name:
818
+ name: San Marino
819
+ official_name: Republic of San Marino
820
+ sn:
821
+ common_name:
822
+ name: Senegal
823
+ official_name: Republic of Senegal
824
+ so:
825
+ common_name:
826
+ name: Somalia
827
+ official_name: Federal Republic of Somalia
828
+ sr:
829
+ common_name:
830
+ name: Suriname
831
+ official_name: Republic of Suriname
832
+ ss:
833
+ common_name:
834
+ name: South Sudan
835
+ official_name: Republic of South Sudan
836
+ st:
837
+ common_name:
838
+ name: Sao Tome and Principe
839
+ official_name: Democratic Republic of Sao Tome and Principe
840
+ sv:
841
+ common_name:
842
+ name: El Salvador
843
+ official_name: Republic of El Salvador
844
+ sx:
845
+ common_name:
846
+ name: Sint Maarten (Dutch part)
847
+ official_name: Sint Maarten (Dutch part)
848
+ sy:
849
+ common_name:
850
+ name: Syrian Arab Republic
851
+ official_name:
852
+ sz:
853
+ common_name:
854
+ name: Swaziland
855
+ official_name: Kingdom of Swaziland
856
+ tc:
857
+ common_name:
858
+ name: Turks and Caicos Islands
859
+ official_name:
860
+ td:
861
+ common_name:
862
+ name: Chad
863
+ official_name: Republic of Chad
864
+ tf:
865
+ common_name:
866
+ name: French Southern Territories
867
+ official_name:
868
+ tg:
869
+ common_name:
870
+ name: Togo
871
+ official_name: Togolese Republic
872
+ th:
873
+ common_name:
874
+ name: Thailand
875
+ official_name: Kingdom of Thailand
876
+ tj:
877
+ common_name:
878
+ name: Tajikistan
879
+ official_name: Republic of Tajikistan
880
+ tk:
881
+ common_name:
882
+ name: Tokelau
883
+ official_name:
884
+ tl:
885
+ common_name:
886
+ name: Timor-Leste
887
+ official_name: Democratic Republic of Timor-Leste
888
+ tm:
889
+ common_name:
890
+ name: Turkmenistan
891
+ official_name:
892
+ tn:
893
+ common_name:
894
+ name: Tunisia
895
+ official_name: Republic of Tunisia
896
+ to:
897
+ common_name:
898
+ name: Tonga
899
+ official_name: Kingdom of Tonga
900
+ tr:
901
+ common_name:
902
+ name: Turkey
903
+ official_name: Republic of Turkey
904
+ tt:
905
+ common_name:
906
+ name: Trinidad and Tobago
907
+ official_name: Republic of Trinidad and Tobago
908
+ tv:
909
+ common_name:
910
+ name: Tuvalu
911
+ official_name:
912
+ tw:
913
+ common_name: Taiwan
914
+ name: Taiwan, Province of China
915
+ official_name: Taiwan, Province of China
916
+ tz:
917
+ common_name:
918
+ name: Tanzania, United Republic of
919
+ official_name: United Republic of Tanzania
920
+ ua:
921
+ common_name:
922
+ name: Ukraine
923
+ official_name:
924
+ ug:
925
+ common_name:
926
+ name: Uganda
927
+ official_name: Republic of Uganda
928
+ um:
929
+ common_name:
930
+ name: United States Minor Outlying Islands
931
+ official_name:
932
+ us:
933
+ common_name:
934
+ name: United States
935
+ official_name: United States of America
936
+ uy:
937
+ common_name:
938
+ name: Uruguay
939
+ official_name: Eastern Republic of Uruguay
940
+ uz:
941
+ common_name:
942
+ name: Uzbekistan
943
+ official_name: Republic of Uzbekistan
944
+ va:
945
+ common_name:
946
+ name: Holy See (Vatican City State)
947
+ official_name:
948
+ vc:
949
+ common_name:
950
+ name: Saint Vincent and the Grenadines
951
+ official_name:
952
+ ve:
953
+ common_name: Venezuela
954
+ name: Venezuela, Bolivarian Republic of
955
+ official_name: Bolivarian Republic of Venezuela
956
+ vg:
957
+ common_name:
958
+ name: Virgin Islands, British
959
+ official_name: British Virgin Islands
960
+ vi:
961
+ common_name:
962
+ name: Virgin Islands, U.S.
963
+ official_name: Virgin Islands of the United States
964
+ vn:
965
+ common_name:
966
+ name: Viet Nam
967
+ official_name: Socialist Republic of Viet Nam
968
+ vu:
969
+ common_name:
970
+ name: Vanuatu
971
+ official_name: Republic of Vanuatu
972
+ wf:
973
+ common_name:
974
+ name: Wallis and Futuna
975
+ official_name:
976
+ ws:
977
+ common_name:
978
+ name: Samoa
979
+ official_name: Independent State of Samoa
980
+ ye:
981
+ common_name:
982
+ name: Yemen
983
+ official_name: Republic of Yemen
984
+ yt:
985
+ common_name:
986
+ name: Mayotte
987
+ official_name:
988
+ za:
989
+ common_name:
990
+ name: South Africa
991
+ official_name: Republic of South Africa
992
+ zm:
993
+ common_name:
994
+ name: Zambia
995
+ official_name: Republic of Zambia
996
+ zw:
997
+ common_name:
998
+ name: Zimbabwe
999
+ official_name: Republic of Zimbabwe