carmens 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
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